我想列出在’AFTER UPDATE TRIGGER’触发n级之前执行的查询.列表将在TRIGGER内部完成.
n可以是4或更小.
任何指针或如果列表可以通过任何其他方式完成将有所帮助?
如果有错误,我必须调试前端和后端.
– 编辑 –
实际上每次更新单元格都是空的.我必须追踪它.它很少发生.
– 编辑 –
或者说如何获取用户执行的最后n个查询.
– 编辑 –
我做了如下:
SELECT top(15) dest.text AS [Query]
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
--inner join sys.sysprocesses
-- on sys.sysprocesses.sql_handle=deqs.sql_handle
ORDER BY deqs.last_execution_time DESC
之后的代码 – 似乎正在工作,因为完整代码为所有用户提供代码执行查询.我对它们进行了研究,因为服务器很重要.
连接问题在这里
SQL cell wise trigger
(问题发布之前的流程是’..触发,最多n级?’)
最佳答案 如果您使用的是SQL Server 2008,则可以使用扩展事件来获取整个TSQL调用堆栈.有关示例代码,请参见
my answer here.