CREATE OR REPLACE PACKAGE pkg_test AS TYPE myrctype IS REF CURSOR; END pkg_test; /create or replace function get_rc return pkg_test.myrctype as v_rc pkg_test.myrctype; begin open v_rc for 'select * from aaa'; return v_rc; end; /SQL> create view v_rt of get_rc as select * from aaa;create view v_rt of get_rc as select * from aaaORA-00902: 无效数据类型用函数返回值作为视图不行,还是在过程内建立视图比较可行
可否说得具体点儿,谢谢!
你可以寫個過程,使用動態sql來生成視圖,這個過程里面你可以使用游標什么的。
能否不"利用现有的Procedure和Function返回的cursor"呢?
AS
TYPE myrctype IS REF CURSOR;
END pkg_test;
/create or replace function get_rc
return pkg_test.myrctype
as
v_rc pkg_test.myrctype;
begin
open v_rc for 'select * from aaa';
return v_rc;
end;
/SQL> create view v_rt of get_rc as select * from aaa;create view v_rt of get_rc as select * from aaaORA-00902: 无效数据类型用函数返回值作为视图不行,还是在过程内建立视图比较可行