我必须使用返回REF CURSOR
的现有存储过程。我需要将resultset
插入临时表中。
程序规则是:
TYPE cur IS REF CURSOR;
PROCEDURE get(p_one NUMBER ,p_two OUT cur);
如何将此过程的resultset
插入表中。
答案 0 :(得分:0)
我刚刚重新阅读了你问题的标题。你真的需要能够从程序中选择吗?
如果是这样,可以通过使用流水线功能来实现。
这个过程是:
这个例子可以帮助你:
create or replace type to_test as object (
val1 varchar2(32),
val2 varchar2(32)
);
create or replace type tt_test as table of to_test;
create or replace function demo_pipe return tt_test pipelined
is
v_test to_test;
begin
for rec in (select * from user_tables) loop
v_test := to_test(rec.table_name, rec.tablespace_name);
pipe row (v_test);
end loop;
end;
/
select * from table(demo_pipe);