Nachfolgend finden Sie ein Beispiel für eine gespeicherte Prozedur in Oracle mit IN OUT-Parameter. Es nimmt die Mitarbeiternummer (i_empno) als IN-Parameter und gibt den Mitarbeiternamen (o_ename) als OUT-Parameter zurück.
Beispiel für IN-OUT-Parameter einer gespeicherten Prozedur
CREATE OR REPLACE PROCEDURE GET_EMP_NAME (i_empno IN emp.empno%TYPE, o_ename OUT emp.ename%TYPE) IS CURSOR c_ename (p_empno emp.empno%TYPE) IS SELECT ename FROM emp WHERE empno = p_empno; BEGIN OPEN c_ename (i_empno); FETCH c_ename INTO o_ename; CLOSE c_ename; END get_emp_name;
Prozedur GET_EMP_NAME ausführen
SET SERVEROUTPUT ON; DECLARE v_name emp.ename%TYPE; BEGIN get_emp_name (7566, v_name); DBMS_OUTPUT.put_line (v_name); END;
Ausgabe
JONES PL/SQL procedure successfully completed.