如何在oracle存储过程中返回游标

王朝oracle·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

1:首先你需要创建一个包,并定义你返回的游标的类型、存储过程

create or replace package TEST_PKG is

-- Public type declarations

type cur_emp is REF CURSOR;

procedure test_proc (v_empno in number, emps out cur_emp);

end TEST_PKG;

2:然后你再创建包体

create or replace package body TEST_PKG is

procedure test_proc (v_empno in number, emps out cur_emp)

as

begin

open emps for select * from emp where empno=7369;

end test_proc;

end TEST_PKG ;

3,通过JAVA调用

cstmt = conn.prepareCall("{call TEST_PKG .test_proc (?)}");

cstmt.registerOutParameter(1, OracleTypes.CURSOR);

cstmt.execute();

//获得结果集

rs = (ResultSet)cstmt.getObject(4);

while(rs.next()){......}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航