LoginSignup
0
0

PL/SQL #1 ~ストアドプロシージャまで

Posted at

PLSQL

SQLの拡張機能として「PL/SQL」がある
大きな特徴としては
分岐やfor文が使えることであり、

OracleDatabaseに対しての移植性が高く
また、内部にプログラムを内包できることからパフォーマンス性も高い。

  • 無名プログラム
    (プログラム本体がDBに格納されないもの)
  • ストアドプログラム
    (DBにプログラムが格納される)

基本的な構造は

DECLARE
  宣言部分;
BEGIN
  実行部分;
EXCEPTION
  例外処理部分;
END;

で作成されている

感覚としてはその他のプログラムに言語に近く
宣言部で変数等を設定し、
実行部で処理を記載
例外処理部でエラー発生時の処理を記載する

CREATE PROCEDURE
 --<プロシージャ名>
 TEST_PROCEDURE
IS
 --<宣言部分>
 var1 VARCHAR2(10) := 'Hello';
 var2 VARCHAR2(10) := 'World';
BEGIN
 --<実行部分>
 DBMS_OUTPUT.PUT_LINE( var1 || var2 ); 
EXCEPTION
 WHEN OTHERS THEN
  NULL;
END TEST_PROCEDURE;

今回の場合は宣言部分で設定した文章を読み込むだけの
単純な文章だが、
基本構文としてはこの形である。

プロシージャに関しては

CREATE OR REPLACE PROCEDURE

とすることで今あるものを上書きすることが可能である。
処理に応じて使い分ける必要がある。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0