用java调用oracle存储过程总结..doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用java调用oracle存储过程总结.

站内相关文章|Related Articles 数据库因ora-600[ktbair1]和ora-7445[ksmudr]宕机处理 Oracle Kernel Layer ORA-600 Code Info 怎样使用OCI编写多线程的ORACLE应用软件 IBM AIX Oracle 9i RAC 性能因素 - udp及其他 Oracle10g RAC环境下DataGuard备库搭建实例 1、什么是存储过程。存储过程是数据库服务器端的一段程序,它有两种类型。一种类似于SELECT查询,用于检索数据,检索到的数据能够以数据集的形式返回给客户。另一种类似于INSERT或DELETE查询,它不返回数据,只是执行一个动作。有的服务器允许同一个存储过程既可以返回数据又可以执行动作。 2、什么时候需要用存储过程   如果服务器定义了存储过程,应当根据需要决定是否要用存储过程。存储过程通常是一些经常要执行的任务,这些任务往往是针对大量的记录而进行的。在服务器上执行存储过程,可以改善应用程序的性能。这是因为: .服务器往往具有强大的计算能力和速度。 .避免把大量的数据下载到客户端,减少网络上的传输量。   例如,假设一个应用程序需要计算一个数据,这个数据需要涉及到许多记录。如果不使用存储过程的话,把这些数据下载到客户端,导致网络上的流量剧增。   不仅如此,客户端可能是一台老掉牙的计算机,它的运算速度很慢。而改用存储过程后,服务器会很快地把数据计算出来,并且只需传递一个数据给客户端,其效率之高是非常明显的。 3、存储过程的参数   要执行服务器上的存储过程,往往要传递一些参数。这些参数分为四种类型:   第一种称为输入参数,由客户程序向存储过程传递值。   第二种称为输出参数,由存储过程向客户程序返回结果。   第三种称为输入/输出参数,既可以由客户程序向存储过程传递值,也可以由存储过程向客户程序返回结果。   第四种称为状态参数,由存储过程向客户程序返回错误信息。   要说明的是,并不是所有的服务器都支持上述四种类型的参数,例如,InterBase就不支持状态参数。 4、oracle 存储过程的基本语法 ? 1.基本结构 CREATE OR REPLACEPROCEDURE 存储过程名字 ( ? ? 参数1 IN NUMBER, ? ? 参数2 IN NUMBER ) IS 变量1 INTEGER :=0; 变量2 DATE; BEGIN END 存储过程名字 2.SELECT INTO STATEMENT ? 将select查询的结果存入到变量中,可以同时将多个列存储多个变量中,必须有一条 ? 记录,否则抛出异常(如果没有记录抛出NO_DATA_FOUND) ? 例子: ? BEGIN ? SELECT col1,col2 into 变量1,变量2 FROM typestruct where xxx; ? EXCEPTION ? WHEN NO_DATA_FOUND THEN ? ? ? xxxx; ? END; 一:无返回值的存储过程 存储过程为: CREATE OR REPLACE PROCEDURE TESTA(PARA1 IN VARCHAR2,PARA2 IN VARCHAR2) AS BEGIN ? INSERT INTO HYQ.B_ID (I_ID,I_NAME) S (PARA1, PARA2); END TESTA; 然后呢,在java里调用时就用下面的代码: package com.hyq.src; import java.sql.*; import java.sql.ResultSet; public class TestProcedureOne { public TestProcedureOne() { } public static void main(String[] args ){ ? ? String driver = oracle.jdbc.driver.OracleDriver; ? ? String strUrl = jdbc:oracle:thin:@127.0.0.1:1521: hyq ; ? ? Statement stmt = null; ? ? ResultSet rs = null; ? ? Connection conn = null; ? ? CallableStatement cstmt = null; ? ? try { ? ? ? Class.forName(driver); ? ? ? conn = DriverManager.getConnection(strUrl, hyq , hyq ); ? ? ? CallableStatement pro

文档评论(0)

taobao88 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档