检索最近执行的SQL命令(T-SQL)

我的一位开发人员在SQL Server 2008中处理基于触发器的日志记录工具,问我是否有命令在T-SQL中检索最近执行的SQL命令。我认为有一个系统存储过程只是为了这样一个功能,但我可能正在考虑前十年的另一个产品...在线搜索没有给我们带来任何结果。 有没有人有关于这种类型的任何信息?     
已邀请:
一定要试试这个:
SELECT
DMExQryStats.last_execution_time AS [Executed At],
DMExSQLTxt.text AS [Query]
FROM
sys.dm_exec_query_stats AS DMExQryStats
CROSS APPLY
sys.dm_exec_sql_text(DMExQryStats.sql_handle) AS DMExSQLTxt
ORDER BY
DMExQryStats.last_execution_time DESC
它将返回最近执行的查询以及执行它们的日期和时间     
那么,检索最新SQL批处理的过程可以安全地返回自己:) 请注意,您可以根据
last_execution_time
栏查看
sys.dm_exec_query_stats
sys.dm_exec_procedure_stats
以查看计划最后一次执行的时间。但请注意,该方法不可靠,因为它不考虑执行后从缓存中逐出的计划。     
“最新”在多核机器的背景下意味着什么? 另外,他是指最近开始的,还是最近完成的? 最后,他应该打开SSMS并查看Activity Monitor。     

要回复问题请先登录注册