当前位置:  开发笔记 > 编程语言 > 正文

你如何优化表的多个触发器?

如何解决《你如何优化表的多个触发器?》经验,为你挑选了1个好方法。

我在桌子上有几个触发器,我想保持分离,并希望对它们进行优化.

我可以只有一个触发器并在那里执行逻辑,但我想知道是否有一种更简单/逻辑的方法来实现以预定义的顺序进行此操作?



1> Scott Nichol..:

使用sp_settriggerorder.您可以根据操作指定要触发的第一个和最后一个触发器.

MSDN上的sp_settriggerorder

从以上链接:
A.设置DML触发器的触发顺序
以下示例指定触发器uSalesOrderHeader是在Sales.SalesOrderHeader表上发生UPDATE操作后触发的第一个触发器.

USE AdventureWorks;
GO
sp_settriggerorder 
    @triggername= 'Sales.uSalesOrderHeader', 
    @order='First', 
    @stmttype = 'UPDATE';

B.设置DDL触发器的触发顺序
以下示例指定触发器ddlDatabaseTriggerLog是在AdventureWorks数据库中发生ALTER_TABLE事件后触发的第一个触发器.

USE AdventureWorks;
GO
sp_settriggerorder 
    @triggername= 'ddlDatabaseTriggerLog', 
    @order='First', 
    @stmttype = 'ALTER_TABLE', 
    @namespace = 'DATABASE';

推荐阅读
mylvfamily
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有