請問,oracle的存儲過程如何能返回數據集結果。

postfxj 2008-03-11 02:54:28
請問,oracle的存儲過程如何能返回數據集結果。
...全文
63 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
codearts 2008-03-13
  • 打赏
  • 举报
回复
用ref cursor 就可以了

sys_refcursor是oracle定义的一个ref cursor
codearts 2008-03-13
  • 打赏
  • 举报
回复
SQL> set serveroutput on

SQL> create or replace procedure p_fetch_5_row
2 (
3 v_owner varchar2
4 ,ret_cur out sys_refcursor
5 )
6 is
7 begin
8 open ret_cur for
9 select object_name
10 from dba_objects
11 where owner = v_owner
12 and rownum <= 5;
13 end p_fetch_5_row;
14 /

过程已创建。

SQL> create or replace procedure p_exec
2 is
3 v_cur sys_refcursor;
4 v_object_name varchar2(2000);
5 begin
6 p_fetch_5_row('SYS', v_cur);
7 loop
8 fetch v_cur into v_object_name;
9 exit when v_cur%notfound;
10 dbms_output.put_line(v_object_name);
11 end loop;
12
13 close v_cur;
14 end p_exec;
15 /

过程已创建。

SQL> exec p_exec
/1005bd30_LnkdConstant
/10076b23_OraCustomDatumClosur
/10297c91_SAXAttrList
/103a2e73_DefaultEditorKitEndP
/1048734f_DefaultFolder

PL/SQL 过程已成功完成。
postfxj 2008-03-13
  • 打赏
  • 举报
回复
我要返回查詢結果,會的給個例子。
postfxj 2008-03-11
  • 打赏
  • 举报
回复
會的請給一個例子。

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧