還原 SQL Server Management Studio 查詢歷史記錄
在 SQL Server Management Studio (SSMS) 中尋找過去的查詢可能很棘手,因為 SSMS 不會直接將查詢歷史記錄儲存在日誌檔案中。 但是,有幾種方法可以幫助您檢索查詢:
方法一:檢查計畫快取
如果您的 SQL Server 尚未重新啟動且查詢計劃尚未刪除,您可能會在計劃快取中找到它。 使用此 T-SQL 命令,將 '%something unique about your query%'
替換為查詢中的唯一識別碼:
<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>
方法 2:檢查復原檔案
如果 SSMS 崩潰並且您遺失了查詢,請在此目錄中搜尋恢復檔案:
<code>C:\Users\<your_username>\Documents\SQL Server Management Studio\Backup Files\</code>
方法三:使用第三方工具或伺服器端追蹤
如果以上方法都失敗,請考慮使用第三方工具,例如SSMS Tools Pack(適用於SQL Server 2012及更早版本)。 或者,實施伺服器端跟踪,透過您的登入名稱或主機名稱進行過濾。
方法四:依執行時間排序結果
要依照上次執行時間組織查詢歷史記錄,請使用此查詢連接 sys.dm_exec_cached_plans
和 sys.dm_exec_query_stats
,按 last_execution_time
:
<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; ``` Remember to replace `'%something unique about your query%'` with a distinctive part of your query.</code>
以上是如何擷取我的 SQL Server Management Studio 查詢歷史記錄?的詳細內容。更多資訊請關注PHP中文網其他相關文章!