查询SQLSERVER执行过的SQL记录
有的時候,需要知道SQLSERVER執行了什么語句,可以用下面的方法:
SELECT TOP 1000?
--創建時間?
QS.creation_time,?
--查詢語句?
SUBSTRING(ST.text,(QS.statement_start_offset/2)+1,?
((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)?
ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1?
) AS statement_text,?
--執行文本?
ST.text,?
--執行計劃?
QS.total_worker_time,?
QS.last_worker_time,?
QS.max_worker_time,?
QS.min_worker_time?
FROM?
sys.dm_exec_query_stats QS?
--關鍵字?
CROSS APPLY?
sys.dm_exec_sql_text(QS.sql_handle) ST?
WHERE?
QS.creation_time BETWEEN '2012-12-03 09:00:00' AND '2012-12-03 11:00:00'?
--AND ST.text LIKE '%%'?
ORDER BY?
QS.creation_time DESC
SELECT TOP 1000?
--創建時間?
QS.creation_time,?
--執行文本?
ST.text
FROM?
sys.dm_exec_query_stats QS?
--關鍵字?
CROSS APPLY?
sys.dm_exec_sql_text(QS.sql_handle) ST?
WHERE?
QS.creation_time BETWEEN '2012-12-03 09:00:00' AND '2012-12-03 11:00:00'?
AND ST.text NOT LIKE '%SELECT * FROM T_LOCATIONINFO WHERE STRCLIPLOGICID in(%'?
ORDER BY?
QS.creation_time DESC
總結
以上是生活随笔為你收集整理的查询SQLSERVER执行过的SQL记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: hdu 2047(递推)
- 下一篇: 如何删除mysql-bin.0000X