17,377
社区成员
发帖
与我相关
我的任务
分享
--创建procedure
create or replace procedure sql_test(out_return out sys_refcursor) is
begin
open out_return for 'select * from tgp_funds';
end;
2
3
4
5
--创建procedure
--引用
declare
cur1 SYS_REFCURSOR;
i tgp_funds%rowtype;
begin
sql_test(cur1);
loop
fetch cur1
into i;
exit when cur1%notfound;
dbms_output.put_line('----------------:' || i.fnd_id);--fnd_id为表tgp_funds中的fnd_id 列
end loop;
close cur1;
end;
[/quote]
能问一下吗
提供了下面两个代码,如果在存储过程里只用--创建procedure 的代码,会返回结果集吗,还是--创建procedure
--引用两个一起用才能返回结果集?
谢谢了
--创建procedure
--引用[/quote]
一个是创建的语句,一个是调用的。
过程是先创建好了,这个存储过程一直放在那存着, 你想什么时候用,就什么时候调用,也就是上文说的引用的代码。
--创建procedure
create or replace procedure sql_test(out_return out sys_refcursor) is
begin
open out_return for 'select * from tgp_funds';
end;
2
3
4
5
--创建procedure
--引用
declare
cur1 SYS_REFCURSOR;
i tgp_funds%rowtype;
begin
sql_test(cur1);
loop
fetch cur1
into i;
exit when cur1%notfound;
dbms_output.put_line('----------------:' || i.fnd_id);--fnd_id为表tgp_funds中的fnd_id 列
end loop;
close cur1;
end;
[/quote]
能问一下吗
提供了下面两个代码,如果在存储过程里只用--创建procedure 的代码,会返回结果集吗,还是--创建procedure
--引用两个一起用才能返回结果集?
谢谢了
--创建procedure
--引用
--创建procedure
create or replace procedure sql_test(out_return out sys_refcursor) is
begin
open out_return for 'select * from tgp_funds';
end;
--引用
declare
cur1 SYS_REFCURSOR;
i tgp_funds%rowtype;
begin
sql_test(cur1);
loop
fetch cur1
into i;
exit when cur1%notfound;
dbms_output.put_line('----------------:' || i.fnd_id);--fnd_id为表tgp_funds中的fnd_id 列
end loop;
close cur1;
end;
[/quote]
正解++
--创建procedure
create or replace procedure sql_test(out_return out sys_refcursor) is
begin
open out_return for 'select * from tgp_funds';
end;
--引用
declare
cur1 SYS_REFCURSOR;
i tgp_funds%rowtype;
begin
sql_test(cur1);
loop
fetch cur1
into i;
exit when cur1%notfound;
dbms_output.put_line('----------------:' || i.fnd_id);--fnd_id为表tgp_funds中的fnd_id 列
end loop;
close cur1;
end;