Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak wywołać funkcję Oracle, która ma SYS_REFCURSOR jako parametr OUT?

Po prostu zadeklaruj zmienną typu SYS_REFCURSOR w bloku wywołującym i wywołaj swoją funkcję, np. z 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;
 /


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ciąg oddzielony przecinkami do listy

  2. ORA-29913:błąd podczas wykonywania objaśnienia ODCIEXTTABLEOPEN

  3. Jak rozwiązać problem z Oracle DBMS_LOB

  4. Jak skonfigurować połączony serwer z bazą danych Oracle na SQL 2000/2005?

  5. Błąd wyjścia SQL Fiddle