oracle用存储过程返回查询结果oracle用存储过程返回查询结果
在oracle的precedure要么使用cursor返回单个值(含单条记录),要么就使用ref
cursor返回记录集。
如果是查询1个列,可以如下:
[email=SYS@boss2>declare]SYS@boss2>declare[/email]
2 cursor v_cur is
3 select t2 from t;
4 begin
5 for v_t in v_cur
6 loop
7 dbms_output.put_line(v_t.t2);
8 end...
oracle用存储过程返回查询结果
在oracle的precedure要么使用cursor返回单个值(含单条记录),要么就使用ref
cursor返回记录集。
如果是查询1个列,可以如下:
[email=SYS@boss2>declare]SYS@boss2>declare[/email]
2 cursor v_cur is
3 select t2 from t;
4 begin
5 for v_t in v_cur
6 loop
7 dbms_output.put_line(v_t.t2);
8 end loop;
9 end;
10 /
1
2
3
4
5
6
6
PL/SQL procedure successfully completed.
如果是个记录集可以如下:
create or replace procedure test(cr_test in out sys_refcursor)
is
3 begin
4 open cr_test for select * from t;
5 end;
6 /
Procedure created.
[email=SYS@boss2>variable]SYS@boss2>variable[/email]
x refcursor
[email=SYS@boss2>exec]SYS@boss2>exec[/email]
test(:x)
PL/SQL procedure successfully completed.
[email=SYS@boss2>print]SYS@boss2>print[/email]
x
T1 T2
---------------------------------------- ----------
aa 1
bbb 2
? 3
c 4
T? 5
6
dd 6
7 rows selected.
当然还有其他方法能返回,这里就不多啰唆了。
本文档为【oracle用存储过程返回查询结果】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。