由于最近写了一条sql没有保存想重新写又挺麻烦的,于是想Sql Server能不能像PL Sql一样Ctrl+E就调出了最近在本地执行的sql,结果是不行的。
不过在网上找到了用sql语句查询最近数据库执行的sql 也能一用,记得大致日期与sql中用到的表很容易就找出来之前写的sql。
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 1=1
--and QS.creation_time BETWEEN ‘2020-02-23 00:00:00‘ AND ‘2020-02-28 00:00:00‘ AND ST.text LIKE ‘%system_role_type%‘
ORDER BY QS.creation_time DESC
代码来源:https://www.cnblogs.com/icycore/p/10493237.html
原文:https://www.cnblogs.com/binzi/p/12402251.html