代码之家  ›  专栏  ›  技术社区  ›  Neil Weicher

从SQL Server 2008中的触发器获取SQL查询

  •  0
  • Neil Weicher  · 技术社区  · 11 年前

    在SQLServer2008中,假设我有一个表,其中包含一个视图和 INSTEAD OF 触发它。

    当我插入或更新时,触发器内部是否有方法来确定用于调用触发器的SQL查询?

    例如,如果我执行以下操作:

    UPDATE MyView SET Address = '123 Main St'
    

    触发器内部是否有一种方法来获取所使用的实际SQL查询,即。,

    更新MyView SET地址='123 Main St'
    

    我希望这是有道理的。

    谢谢

    1 回复  |  直到 11 年前
        1
  •  0
  •   marc_s    11 年前

    不,扳机不是 已调用 通过该语句-触发器 被解雇 从RDBMS中删除,因为它定义的条件( INSERT , UPDATE DELETE )已经发生。

    触发器与实际语句完全异步,不,您无法获得导致触发器触发的T-SQL查询。你所能依靠的就是 Inserted Deleted 触发器中可用的伪表,告诉您哪些行被插入、删除和更新。