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;
2. Call the procedure in PL/SQL
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;
3. Call the procedure in JDBC java.
cstmt.registerOutParameter(2,oracle.jdbc.OracleTypes.CURSOR);cstmt.execute(); --将引用游标类型转化为结果集 ResultSet rs = (ResultSet)cstmt.getObject(2);