有没有办法知道在SQL Server 2005中执行的每个句子?

时间:2011-09-20 11:58:17

标签: sql-server-2005 logging

我需要知道是否有任何方法可以知道在SQL Server 2005数据库中执行的每个句子。那是因为我在具体日期修改了注册表,我想知道为更新注册表而执行的句子。当然,如果我能在句子之外获得更多信息,那就太棒了!

非常感谢!

1 个答案:

答案 0 :(得分:0)

如果您的语句已在最近执行,则此查询将为您提供最后几个已执行的语句,并且可能有用。

SELECT 
    DB_NAME (dest.dbid) DatabaseName, 
    deqs.last_execution_time AS [Time], 
    dest.TEXT AS [Query]
FROM 
    sys.dm_exec_query_stats AS deqs
    CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest

ORDER BY deqs.last_execution_time DESC

如果您知道语句何时执行,并且想要捕获当时的所有SQL语句,那么您可以使用Profiler跟踪所有活动。

http://msdn.microsoft.com/en-us/library/ms187929%28v=SQL.90%29.aspx