谁能告诉我 SQL Server 中数据库级触发器和服务器级触发器之间的区别吗?
提前致谢。
最佳答案
SQL Server 2005 引入了 DML 触发器,可以将其设置为在您选择的 DDL 事件上触发,例如 CREATE_TABLE
、ALTER_TABLE
、DROP_TABLE
、ALTER_DATABASE
、CREATE_LOGIN
等
DDL触发器可以在2个范围内设置:
- 服务器范围:使用服务器范围创建的触发器必须以服务器 DDL 事件为目标,例如 CREATE_DATABASE 或 CREATE_LOGIN
- 数据库范围:使用数据库范围创建的触发器必须针对数据库级事件,例如 CREATE_TABLE 或 ALTER_PROC。
在 msdn here 上查看 SQL Server DDL 触发器事件的完整列表(包括其范围) .
DDL 触发器的语法:
CREATE TRIGGER [TriggerName]
ON [Scope (Server|Database)]
FOR [EventName...],
AS
-- code for your trigger response here
关于sql - SQL Server 数据库级触发器和服务器级触发器的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35146754/