访问 SQL Server Management Studio (SSMS) 查询历史记录
与许多应用程序不同,SSMS 不维护持久的查询历史记录日志。 但是,如果 SQL Server 实例尚未重新启动,您可以尝试使用以下查询从计划缓存中恢复最近的查询:
<code class="language-sql">SELECT t.[text] FROM sys.dm_exec_cached_plans AS p CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t WHERE t.[text] LIKE N'%something unique about your query%';</code>
请记住将 '%something unique about your query%'
替换为您要查找的查询的独特部分。
崩溃后恢复:
如果 SSMS 崩溃,您可能会在此目录中找到查询历史记录的备份:
<code>C:\Users\<your_username>\Documents\SQL Server Management Studio\Backup Files\</code>
防止未来损失:
为了防止将来丢失查询历史记录,请考虑以下选项:
优化恢复查询:
为了更有效地检索,特别是在繁忙的环境中,请考虑这个改进的查询,它与 sys.dm_exec_query_stats
连接并按上次执行时间排序:
<code class="language-sql"> SELECT t.[text], s.last_execution_time FROM sys.dm_exec_cached_plans AS p INNER JOIN sys.dm_exec_query_stats AS s ON p.plan_handle = s.plan_handle CROSS APPLY sys.dm_exec_sql_text(p.plan_handle) AS t WHERE t.[text] LIKE N'%something unique about your query%' ORDER BY s.last_execution_time DESC; ``` This will return results ordered from most recently executed to least recently executed.</code>
以上是如何恢复和查看 SQL Server Management Studio 查询历史记录?的详细内容。更多信息请关注PHP中文网其他相关文章!