例如管道函數,如果我有這種功能
與光標參數預言
function test_pipe(p_source in t_cursor)
return t_tab
pipelined
as --some code goes here
t_cursor是一個引用遊標。 我知道如果我在一個包聲明光標並希望將它作爲參數傳遞我可以調用這個函數像
select * from table(test_pipe(cursor(select 1 from dual)));
但什麼。 這樣的事情。
procedure test is
v_ct pls_integer;
cursor main_cur is select 1 from dual;
begin
select count(*) into v_ct from table(test_pipe(main_cur));
--some code
end;
,我得到main_cur無效identifier-- PL/SQL:ORA00904錯誤。 我該如何編寫代碼才能將main_cur作爲參數傳遞給test_pipe?
您將n eed將'rowsource'傳遞給流水線功能。遊標只是指向結果集的指針。看到我的答案。 – 2015-03-02 12:16:12