「Oracle」EXECUTE文でプロシージャを呼び出すサンプル
環境
Oracle Database 11g Release 11.2.0.1.0 – 64bit Production
PL/SQL Release 11.2.0.1.0 – Production
使用例
1.プロシージャを作成します
構文
CREATE OR REPLACE PROCEDURE プロシージャ名(変数1 IN NUMBER,変数2 OUT NUMBER)
処理コード
SQL構文
SQL> CREATE OR REPLACE PROCEDURE TESTPROC(cftA IN NUMBER,cftB OUT NUMBER) 2 IS 3 n NUMBER := 20; 4 BEGIN 5 cftB := cftA + n; 6 EXCEPTION 7 WHEN OTHERS THEN 8 DBMS_OUTPUT.PUT_LINE('ERROR'); 9 END; 10 / プロシージャが作成されました。
2.IN、OUTの引数をパラメータを渡します
構文
variable 変数名 データ型;
IN,OUTの引数にパラメータを設定します。
SQL> variable ta number; SQL> variable tb number; SQL> EXECUTE :ta := 15;
3.プロシージャを呼び出します
SQL> EXECUTE TESTPROC(:ta,:tb); PL/SQLプロシージャが正常に完了しました。
4.変数の値を出力して結果を確認します
SQL> print :tb; TB ---------- 35