将单个触发器应用于相同的表

Posted

技术标签:

【中文标题】将单个触发器应用于相同的表【英文标题】:Apply single trigger to same tables 【发布时间】:2012-09-21 12:35:21 【问题描述】:

我可以将单个触发器应用于某些表吗?

【问题讨论】:

取决于您的触发器需要做什么。您的意思是当 DML 事件(例如插入)在这些表中的任何一个上发生时应该触发相同的触发器?还是您的意思是同一个触发器在触发时可以操作多个表? 【参考方案1】:

触发器是每个表 - 您不能共享它们。

如果您需要五个表上的触发器 - 您需要创建五个触发器。

【讨论】:

【参考方案2】:

如果您有在触发器之间共享的功能,那么您可以构建一个存储过程并从您必须为每个表构建的触发器中调用它。

【讨论】:

您将无法从那里访问inserteddeleted 这实际上是您无法共享触发器的原因之一(因为表可能具有不同的形式)。但是您可以通过这种方式制作 sp,以便您可以将有用的信息传递给他们。

以上是关于将单个触发器应用于相同的表的主要内容,如果未能解决你的问题,请参考以下文章

将多个列值插入单个插入值?

SQL Server 触发器事务以及存储过程详解

单击时来自组件的Angular2触发指令

数据库触发器

mssql如何将一个数据库中的表同步到另一个数据库中 做成事务

jQuery 如何使 $(this) 选择器触发多个类