Oracle
 sql >> Database >  >> RDS >> Oracle

Come eseguire una procedura all'interno di un pacchetto in Oracle

L'esecuzione di una procedura all'interno di un pacchetto in Oracle consiste semplicemente nel fornire un riferimento al pacchetto prima della procedura. Ad esempio, il nome della tua procedura è Extract_Emp_Data nel pacchetto EMP_INTERFACE, quindi eseguilo come segue:

Esegui una procedura all'interno di un pacchetto nell'esempio Oracle

Begin
/* Package_Name.Procedure_Name */
EMP_Interface.Extract_Emp_Data;
End;
/

se la tua procedura ha parametri, esegui come segue:

Per l'esempio seguente, presupponendo che sia presente un parametro IN per il nome del dipendente e un parametro OUT per eventuali errori.

SET SERVEROUTPUT ON;
Declare
v_o_error varchar2(1000);
Begin
EMP_Interface.Extract_Emp_Data ('John', v_o_error);
DBMS_OUTPUT.PUT_LINE(v_o_error);
End;
/

Se stai eseguendo una procedura in pacchetto dall'interno dello stesso pacchetto ma in un'altra procedura, puoi omettere il nome del pacchetto. Di seguito è riportato l'esempio:

SET SERVEROUTPUT ON;
Declare
v_o_error varchar2(1000);
Begin
Extract_Emp_Data ('John', v_o_error);
DBMS_OUTPUT.PUT_LINE(v_o_error);
End;
/