MSSQL 如何查找查询后激活的所有触发器

问题描述 投票:0回答:1

我有一个复杂的表交互,其中对我的第一个表的插入将触发更新几个其他表的触发器,而这些表又可以激活触发器......等等。

有没有一种方法可以搜索在执行插入查询期间触发的每个触发器?

sql sql-server triggers database-administration
1个回答
1
投票

您可以查看

sys.dm_exec_trigger_stats
以获取当前存储在内存中的任何触发器的信息。每个触发器包含一行。在此处查看更多信息:https://learn.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-exec-trigger-stats-transact-sql?view=sql -服务器版本16

现在,人们可能想知道我们如何区分由我们的操作触发的触发器与恰好在同一时间触发的其他触发器。我们可能有同一数据库的单独开发副本,在这种情况下,通过运行操作并且仅运行我们感兴趣的操作来确定很简单。

如果您使用 SQL Profiler,那么您可能需要检查以下内容:如何让 SQL Profiler 监控触发器执行情况

声称分析触发器可以通过

完成

存储过程: - SP:StmtStarting - SP:StmtCompleted

© www.soinside.com 2019 - 2024. All rights reserved.