データベース・トリガーとは何か
トリガーは、特定の物理データベース・テーブルに対して指定した変更または読み取り処理が実行されたときに自動的に実行される一連のアクションです。変更処理は、アプリケーション・プログラムにおける高水準言語のステートメントによる、挿入、更新、または削除の形をとることができます。読み取り処理は、アプリケーション・プログラムにおける高水準言語のステートメントによる、フェッチ、取得、または読み取りの形をとることができます。これらの処理は、高水準言語によってだけではなく、クエリー、ODBC、JDBC、特定のCLコマンド(RCVFなど)、対話型SQL、埋め込みSQL、呼び出しレベル・インターフェースSQLなどによっても発生します。
これは、LANSAトリガーとは対照的です。LANSAトリガーは、LANSAを介して特定のデータベース処理が行われたときに自動的に実施される特殊なLANSAファンクションです。以降、LANSAのデータベース・トリガーの実装を、「LANSA DBトリガー」または「データベース・トリガー」と呼びます。
データベース トリガーは、IBM iのRDMLX区画で発生するデータベース・アクセスに対してのみ実装されます。
テーブルのLANSA DBトリガーを有効にする前に、既存のアプリケーションが受ける可能性のある影響を、必ず十分に理解してください。
詳細については、当ガイドの以下のトピックを参照してください。また、「データベース・トリガーのアーキテクチャ」も参考になるでしょう。さらに、『DB2 for IBM i Database Programming』、もしくは IBM Infocenter 内のセクション「Triggering automatic events in your database」 (英語) 、そして redbooks の 「Stored Procedures, Triggers, and User-Defined Functions on DB2 Universal Database for iSeries」 (英語) 内のトリガーに関するセクションを読み、理解することをお勧めします。