Triggerとはデータベース管理システム(DBMS)の機能の一つで、テーブルに何らかの操作が加えられた時にあらかじめ指定した処理を自動的に起動する機能。
Triggerは特殊なストアドプロシージャの一種で、処理の内容と、起動する条件、実行するタイミングなどを指定して設定する。指定した条件に合致する変更が行われると自動的に起動され、指定された処理を行う。いくつかのデータベースやテーブルの内容が連動しており、一ヶ所に行われた変更を他に反映するといった処理のために利用される。
便利とは言えば便利だけど、多用しすぎるとパフォーマンスの低下もするしデータの整合性が取れなくなる恐れがあるので使用上の注意をよく読み用法、用量を守り正しくお使い下さい
構文(公式より)
CREATE [ CONSTRAINT ] TRIGGER name { BEFORE | AFTER | INSTEAD OF } { event [ OR ... ] }
ON table
[ FROM referenced_table_name ]
{ NOT DEFERRABLE | [ DEFERRABLE ] { INITIALLY IMMEDIATE | INITIALLY DEFERRED } }
[ FOR [ EACH ] { ROW | STATEMENT } ]
[ WHEN ( condition ) ]
EXECUTE PROCEDURE function_name ( arguments )
ここでeventは以下のいずれかを取ることができます。
INSERT
UPDATE [ OF column_name [, ... ] ]
DELETE
TRUNCATE
これだけ見ると結構面倒臭いです。
てなわけで、以下にて説明いたします。
最終更新:2013年10月08日 18:37