SQL Server Management Studio (SSMS) での過去の SQL クエリの回復
一部のデータベース システム (MySQL、PostgreSQL) とは異なり、SQL Server はクエリ履歴を自動的に記録しません。 したがって、過去のクエリを取得するには、さまざまなアプローチが必要です。
キャッシュされた実行計画を確認しています
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 回復ファイルを調査しています
予期しない SSMS クラッシュの後、次のディレクトリに回復ファイルが見つかる可能性があります:
<code>C:\Users\<your_username>\Documents\SQL Server Management Studio\Backup Files\</code>
サードパーティツールとサーバー側トレース
上記の方法がうまくいかない場合は、次のオプションを検討してください。
クエリ統計の改善
キャッシュされたクエリを最後の実行時間で並べ替えて表示するには、次の拡張クエリを使用します。
<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;</code>
これにより、最近のクエリ アクティビティがより整理されたビューが提供されます。
以上がSQL Server クエリ履歴を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。