Oracleのパッケージ内でプロシージャを実行するには、プロシージャの前にパッケージ参照を指定するだけです。たとえば、プロシージャ名はパッケージEMP_INTERFACEのExtract_Emp_Dataであり、次のように実行します。
Oracleの例でパッケージ内のプロシージャを実行する
Begin /* Package_Name.Procedure_Name */ EMP_Interface.Extract_Emp_Data; End; /
プロシージャにパラメータがある場合は、次のように実行します。
以下の例では、従業員名にINパラメータがあり、エラーがある場合はOUTパラメータがあると想定しています。
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;
/ 同じパッケージ内から別のプロシージャでパッケージ化されたプロシージャを実行している場合は、パッケージ名を省略できます。以下に例を示します。
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;
/