【问题标题】:Apply single trigger to same tables将单个触发器应用于相同的表
【发布时间】:2023-03-09 03:33:01
【问题描述】:

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

【问题讨论】:

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

标签: sql sql-server tsql triggers sql-server-2008-r2


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 您将无法从那里访问inserteddeleted
    • 这实际上是您无法共享触发器的原因之一(因为表可能具有不同的形式)。但是您可以通过这种方式制作 sp,以便您可以将有用的信息传递给他们。
    猜你喜欢
    • 2013-03-12
    • 1970-01-01
    • 2021-06-21
    • 1970-01-01
    • 2015-02-17
    • 2019-04-07
    • 2012-01-10
    • 1970-01-01
    相关资源
    最近更新 更多