本主题提供的信息有助于创建 DDL 触发器、修改 DDL 触发器以及禁用或删除 DDL 触发器。
创建 DDL 触发器
DDL 触发器是使用 DDL 触发器的 Transact-SQL CREATE TRIGGER 语句创建的。
创建 DDL 触发器
重要
SQL Server的未来版本中将删除从触发器返回结果集的功能。 返回结果集的触发器可能会导致应用程序出现意外行为,这些应用程序未设计为使用它们。 避免在新的开发工作中从触发器返回结果集,并计划修改当前执行此操作的应用程序。 若要防止触发器在 SQL Server 中返回结果集,请将 禁止触发器的结果选项 设置为 1。 此选项的默认设置将是 SQL Server 的未来版本中的 1。
修改 DDL 触发器
如果必须修改 DDL 触发器的定义,可以删除并重新创建触发器,或在单个步骤中重新定义现有触发器。
如果更改由 DDL 触发器引用的对象的名称,则必须修改触发器,使其文本反映新名称。 因此,在重命名对象之前,先显示对象的依赖项,以确定任何触发器是否受建议的更改影响。
还可以修改触发器以加密其定义。
修改触发器
查看触发器的依赖项
禁用和删除 DDL 触发器
不再需要 DDL 触发器时,可以将其禁用或删除。
禁用 DDL 触发器不会删除它。 触发器仍作为当前数据库中的对象存在。 但是,当运行任何编程在其上的 Transact-SQL 语句时,触发器不会被触发。 可以重新启用禁用的 DDL 触发器。 启用 DDL 触发器会导致触发方式与最初创建触发器时触发的方式相同。 创建 DDL 触发器时,默认启用它们。
删除 DDL 触发器后,将从当前数据库中删除该触发器。 DDL 触发器所依据的任何对象或数据都不会受到影响。
禁用 DDL 触发器
启用 DDL 触发器
删除 DDL 触发器