SQL Server中数据库级触发器和服务器级触发器的区别

lee*_*625 5 sql sql-server

谁能告诉我 SQL Server 中数据库级触发器和服务器级触发器之间的区别?

提前致谢。

Dee*_*lra 4

SQL Server 2005 引入了 DML 触发器,可以将其设置为在您选择的 DDL 事件(例如CREATE_TABLEALTER_TABLEDROP_TABLEALTER_DATABASECREATE_LOGIN)上触发。

DDL触发器可以在2个范围内设置:

  1. 服务器范围:使用服务器范围创建的触发器必须针对服务器 DDL 事件,例如 CREATE_DATABASE 或 CREATE_LOGIN
  2. 数据库范围:使用数据库范围创建的触发器必须针对数据库级事件,例如 CREATE_TABLE 或 ALTER_PROC。

请在此处查看 msdn 上的 SQL Server DDL 触发器事件的完整列表(包括其范围)。

DDL 触发器的语法:

CREATE TRIGGER [TriggerName]
ON [Scope (Server|Database)]
FOR [EventName...],
AS
-- code for your trigger response here
Run Code Online (Sandbox Code Playgroud)