create or replace procedure get_emp(p_deptno number,emp_det out sys_refcursor)
is
begin
open emp_det for select * from emp where deptno=p_deptno;
end;
/
如何传递sys_refcursor的参数以及如何使用oracle pl / sql中的匿名块打印该结果
答案 0 :(得分:1)
只需声明一个REFCURSOR
变量并将其传递给您的过程
你可以打开
DECLARE
MYCUR SYS_REFCURSOR;
BEGIN
get_emp(123,MYCUR);
FOR I in MYCUR
LOOP
-- ur statements
END LOOP;
END;
/
也喜欢这样使用SQLPLUS。输出就像你运行一个选择查询一样,用光标发送的内容。
VARIABLE MYCUR REFCURSOR;
EXECUTE get_emp(:MYCUR);
print MYCUR;