Overview

トリガーは、テーブルに関連付けられ、データベースに保存される名前付きのSPLコードブロックです。関連付けられたテーブルで指定されたイベントが発生すると、SPLコードブロックが実行されます。コードブロックが実行されると、トリガーは「発動」したと言われます。

トリガーを起動するイベントは、直接または間接的にテーブルで実行される挿入、更新、または削除の任意の組み合わせです。テーブルがSQLの INSERT, UPDATE, DELETE または TRUNCATE コマンドのオブジェクトである場合、対応する挿入、更新、削除、または切り捨てイベントが*トリガーイベント* として定義されていると仮定して、トリガーが直接起動されます。トリガーを起動するイベントは、 CREATE TRIGGER コマンドで定義されます。

別のテーブルで開始されたイベントの結果としてテーブルでトリガーイベントが発生した場合、トリガーを間接的に起動できます。たとえば、 ON DELETE CASCADE 句で定義された外部キーを含むテーブルでトリガーが定義され、親テーブルの行が削除されると、親のすべての子も削除されます。削除が子テーブルのトリガーイベントである場合、子を削除するとトリガーが起動します。