Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment appeler la fonction Oracle qui a SYS_REFCURSOR comme paramètre OUT

Déclarez simplement une variable de type SYS_REFCURSOR dans le bloc appelant et appelez votre fonction, par ex. depuis SQL/Plus :

 set autoprint on;
 var cur refcursor;

 declare
      FUNCTION test_fun (
        p_ref_cur               OUT SYS_REFCURSOR)
      RETURN NUMBER is
      begin
        open p_ref_cur for select * from dual;
        return 1;
      end;

 begin
     dbms_output.put_line(test_fun(:cur));
 end;
 /