这句为啥可以是非动态的,动态的也可以创建
create or replace procedure proc_cursor(dno number,mm out sys_refcursor)
is
begin
open mm for select * from emp where deptno=dno;
end;
----------------------------------------------------------------
而这句就必须是动态的
create or replace function fun_emp(tab varchar2)
return sys_refcursor
is
return_cursor sys_refcursor;
begin
execute immediate 'open return_cursor for select empno,ename,job,sal from'|| tab;
return return_cursor;
end;
------------------------------------------------------------
求解
create or replace procedure proc_cursor(dno number,mm out sys_refcursor)
is
begin
open mm for select * from emp where deptno=dno;
end;
----------------------------------------------------------------
而这句就必须是动态的
create or replace function fun_emp(tab varchar2)
return sys_refcursor
is
return_cursor sys_refcursor;
begin
execute immediate 'open return_cursor for select empno,ename,job,sal from'|| tab;
return return_cursor;
end;
------------------------------------------------------------
求解
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货