[b]1. Create Procedure with Out parameter of CURSOR type[/b]
[b]2. Call the procedure in PL/SQL[/b]
或者
[b]3. Call the procedure in JDBC java.[/b]
create or replace package pa_query as
type p_cursor is ref cursor;
end pa_query;
/
create or replace procedure p_query(v_cursor out pa_query.p_cursor)
is
begin
open v_cursor for select * from emp;
end p_query;
[b]2. Call the procedure in PL/SQL[/b]
declare
type search_results is ref cursor;
results_out search_results;
begin
-- Call the procedure
package pa_query (results_out);
end;
或者
declare
results_out [b]sys_refcursor[/b];
begin
-- Call the procedure
package pa_query (results_out);
end;
[b]3. Call the procedure in JDBC java.[/b]
cstmt.registerOutParameter(2,oracle.jdbc.OracleTypes.CURSOR);cstmt.execute();
--将引用游标类型转化为结果集
ResultSet rs = (ResultSet)cstmt.getObject(2);