sql >> データベース >  >> RDS >> Oracle

Oracleでパッケージ内のプロシージャを実行する方法

    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;
    /
    1. 見落とされたT-SQLジェム

    2. パフォーマンスの神話:切り捨てられたカントはロールバックされます

    3. 存在する場合はUPDATE、それ以外の場合はSQLServer2008でINSERT

    4. NoSQLとは何ですか?どのように利用されますか?