この文は、Adaptive Server Enterprise 互換の方法で、データベース内に新しいトリガを作成するために使用します。
CREATE TRIGGER [owner.]trigger_name ON [owner.]table_name FOR { INSERT, UPDATE, DELETE } AS statement-list
CREATE TRIGGER [owner.]trigger_name ON [owner.]table_name FOR {INSERT, UPDATE} AS [ IF UPDATE ( column_name ) [ { AND | OR } UPDATE ( column_name ) ] ... ] statement-list [ IF UPDATE ( column_name ) [ { AND | OR} UPDATE ( column_name ) ] ... ] statement-list
削除または挿入されたローは、2 つの宣言されたテンポラリ・テーブル内に保持されます。Transact-SQL トリガでは、Adaptive Server Enterprise の場合と同様に、テーブル名 deleted と inserted を使ってこれらのローにアクセスできます。Watcom-SQL CREATE TRIGGER 文では、これらのローには REFERENCING を使ってアクセスします。
トリガ名はデータベース内でユニークでなければなりません。
Transact-SQL トリガは、それを起動した文の後に実行されます。
RESOURCE 権限またはテーブルに対する ALTER パーミッションが必要です。または、DBA 権限が必要です。
CREATE TRIGGER はテーブルのすべてのローをロックして、テーブルを排他的に使用します。
オートコミット。
SQL/2003 ベンダ拡張。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |