最近运行查询WITH参数值

时间:2011-08-25 16:01:58

标签: sql sql-server

尝试在SQL Server上获取最近运行的查询。我目前可以通过运行下面的查询来执行此操作,但是这不会显示参数值。

有没有办法解决这个问题?

SELECT 
    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

由于 布鲁斯

2 个答案:

答案 0 :(得分:1)

不幸的是,您必须使用Profiler

答案 1 :(得分:0)

您可以使用特定会话的参数获取最后一个查询作为流程:

select 1 as anything;
SELECT text
FROM sys.[dm_exec_connections] SDEC 
CROSS APPLY sys.[dm_exec_sql_text](SDEC.[most_recent_sql_handle]) AS DEST 
WHERE SDEC.[most_recent_session_id] = @@spid
order by connect_time desc;

@@ spid将获得当前的执行会话。