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
とすることで今あるものを上書きすることが可能である。
処理に応じて使い分ける必要がある。