CREATE OR REPLACE PACKAGE pkg_test
AS
TYPE myrctype IS REF CURSOR;
END pkg_test;
/create procedure pro(iv_orgid in number,iv_name in varchar2,p_rc out pkg_test.myrctype)
as
str varchar2(50);
begin
str:='select * from employee where orgid ='|| iv_orgid||' and name ='||iv_name;
open p_rc for str;
end;
/
AS
TYPE myrctype IS REF CURSOR;
END pkg_test;
/create procedure pro(iv_orgid in number,iv_name in varchar2,p_rc out pkg_test.myrctype)
as
str varchar2(50);
begin
str:='select * from employee where orgid ='|| iv_orgid||' and name ='||iv_name;
open p_rc for str;
end;
/
loop
fetch c_cursor into ic_orgid,ic_name;
exit when c_cursor%notfound;
--动态语句
end loop
这样就没办法用execute immediate lv_sqlstatement using iv_orgid了。
能不能用to_char把iv_orgid变成varchar2呢?
open p_rc for str;