此语句用于采用与 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
删除或插入的行保存在两个临时表中。在 Transact-SQL 形式的触发器中,可以使用表名 deleted 和 inserted 访问它们,这与在 Adaptive Server Enterprise 中一样。在 Watcom-SQL CREATE TRIGGER 语句中,使用 REFERENCING 子句来访问这些行。
触发器名称在数据库中必须是唯一的。
Transact-SQL 触发器在触发器语句后 (AFTER) 执行。
必须有 RESOURCE 权限和表的 ALTER 权限,或者必须有 DBA 权限。
CREATE TRIGGER 锁定表中的所有行,因此要求独占使用表。
自动提交。
SQL/2003 服务商扩充。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |