这句为啥可以是非动态的,动态的也可以创建
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;
------------------------------------------------------------
求解