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

Jak zwrócić zestaw wyników z procedury składowanej w Oracle?

W tym samouczku podam przykład zwracania zestawu wyników z procedury składowanej w Oracle przy użyciu sys_refcursor.

Wykonaj te kroki, aby zwrócić zestaw wyników z procedury składowanej w Oracle.

1. Utwórz procedurę składowaną w Oracle

Poniższa procedura składowana (p_dept) zwróci nazwy działów w sys_refcursor (p_result) z tabeli działów, w której numer działu jest mniejszy lub równy wartości parametru.

CREATE OR REPLACE PROCEDURE p_dept (p_deptno IN dept.deptno%TYPE,
p_result OUT SYS_REFCURSOR)
IS
BEGIN
OPEN p_result FOR
SELECT dname
FROM dept
WHERE deptno <= p_deptno;
END;
/

2. Uzyskaj zwrócony zestaw wyników i proces

Poniższy blok PL/SQL pobierze wyniki z procedury składowanej (p_dept) i wydrukuje nazwy działów.

SET SERVEROUTPUT ON;
DECLARE
v_result SYS_REFCURSOR;
v_dname VARCHAR2 (100);
BEGIN

/* call the procedure by passing department numbner and sys_refcursor for resultset */
p_dept (30, v_result);

LOOP
FETCH v_result INTO v_dname;

EXIT WHEN v_result%NOTFOUND;
DBMS_OUTPUT.put_line (v_dname);
END LOOP;
END;
/

Wyjście:

ACCOUNTING
RESEARCH
SALES
PL/SQL procedure successfully completed.

Zobacz też:

  • Utwórz plik PDF za pomocą PL/SQL
  • Pobierz aktualny czas lokalny dowolnego kraju w PL/SQL
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-12516, TNS:listener nie mógł znaleźć dostępnej obsługi

  2. Kolejność wykonania warunków w klauzuli SQL 'gdzie'

  3. EBS 12.2.5 i nowsze:Niewspółosiowość przycisku strony logowania

  4. Jak wywołać funkcję lub procedurę składowaną Oracle przy użyciu frameworka trwałości wiosennej?

  5. Jak uciec ze znaków <,> i &do encji HTML w Oracle PL/SQL