Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (中文) » SQL Anywhere 服务器 - SQL 参考 » 使用 SQL » SQL 语句 » SQL 语句 (A-D)

 

CREATE TRIGGER 语句 [T-SQL]

此语句用于采用与 Adaptive Server Enterprise 兼容的方式,在数据库中创建新触发器。

语法 1
CREATE TRIGGER [owner.]trigger_name
ON [owner.]table_name
FOR { INSERT, UPDATE, DELETE }
AS statement-list
语法 2
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   服务商扩充。