數據庫查詢歷史執行過的sql語句
阿新 • • 發佈:2017-05-17
ext ati ase stat code class esc 歷史 blog
平常的調試過程中可能想查詢以前執行過的語句。以下為sqlserver2008中查詢歷史執行語句。
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 ‘2017-1-03 09:00:00‘ AND ‘2017-12-03 11:00:00‘ --AND ST.text LIKE ‘%%‘ ORDERBY 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 ‘2017-1-03 09:00:00‘ AND ‘2017-12-03 11:00:00‘ AND ST.text NOT LIKE ‘%SELECT * FROM T_LOCATIONINFO WHERE STRCLIPLOGICID in(%‘ ORDER BY QS.creation_time DESC
數據庫查詢歷史執行過的sql語句