定义了一个存储过程
procedure GetDate(
aParam in varchar2,
aExesql in out varchar2,
aReturnSet out sys_refcursor
) is
begin
select sysdate into aExesql from dual;
open aReturnSet for 'select sysdate today from dual';
end;
测试的时候
set serveroutput on;
declare
tcursor sys_refcursor;
vSql varchar2(32700);
begin
vSql := 'aa';
execute immediate 'call testpack.GetDate(''aaa'', :V1, :V2)' using in out vSql, out tcursor;
dbms_output.put_line(vSql);
end;
/
返回错误,未连接Oracle
procedure GetDate(
aParam in varchar2,
aExesql in out varchar2,
aReturnSet out sys_refcursor
) is
begin
select sysdate into aExesql from dual;
open aReturnSet for 'select sysdate today from dual';
end;
测试的时候
set serveroutput on;
declare
tcursor sys_refcursor;
vSql varchar2(32700);
begin
vSql := 'aa';
execute immediate 'call testpack.GetDate(''aaa'', :V1, :V2)' using in out vSql, out tcursor;
dbms_output.put_line(vSql);
end;
/
返回错误,未连接Oracle
execute immediate 'begin testpack.GetDate(''aaa'', :V1, :V2);end;' using in out vSql, out tcursor;
execute immediate 'call testpack.GetDate('''aaa''', :V1, :V2)' using in out vSql, out 就是2个'的地方用3个'代替看看