Oracle Database プロシージャを作成する

Oracle Database プロシージャを作成する

Oracle Databaseで、プロシージャを作成する手順を記述してます。「CREATE PROCEDURE」でストアドの名前を決めて作成します。実行結果は「SQL Developer」上で表示してます。

環境

  • OS windows11 home
  • Oracle Database 21c Express Edition
  • SQL Developer 21.2.1.204

手順

プロシージャを作成するには、「CREATE PROCEDURE」を使用します。

CREATE [OR REPLACE] PROCEDURE
  ストアドプロシージャ名[(引数名 {IN | OUT | INOUT} データ型,...)]
IS
  /* 宣言部 */
BEGIN
  /* 処理部 */
EXCEPTION
  /* 例外処理部 */
END
;
パラメータ内容
OR REPLACE同名のプロシージャが既に存在する場合、更新する場合に使用
引数名引数名
IN値を受け取る変数
OUT値を返す変数
INOUTINOUT両方を持つ
データ型引数のデータ型を指定する
ISプロシージャ内部で使用する変数を宣言する
BEGINプロシージャ内の処理
EXCEPTION処理で起きた例外処理

実際に、TESTと表示するだけの「PROCEDURE1」を作成してみます。

CREATE OR REPLACE PROCEDURE PROCEDURE1
IS
BEGIN
    DBMS_OUTPUT.PUT_LINE('TEST');
EXCEPTION
    WHEN OTHERS THEN
        DBMS_OUTPUT.PUT_LINE('ERROR');
END PROCEDURE1;

実行してみます。
※DBMS_OUTPUT.PUT_LINEで表示する場合は、「SET SERVEROUTPUT ON;」を実行しておきます。

SET SERVEROUTPUT ON;
EXEC PROCEDURE1();

実行結果