システム動的管理ビュー (DMV) を使用してクエリ履歴を表示する:詳細な情報を取得する方法
SQL Server Management Studio (SSMS) は、SQL Server データベースを管理するためのツールです。SSMS を使用して過去に実行したクエリ履歴を表示するには、いくつかの方法があります。
方法
-
クエリエディターの履歴ペインを使用する
-
システム動的管理ビューを使用する
詳細
履歴ペインには、過去に実行した 250 件までのクエリが保存されます。履歴ペインからクエリを選択して、再度実行したり、編集したりすることができます。
履歴ペインでクエリを削除するには、Ctrl+D キーを押すか、右クリック メニューから 削除 を選択します。
sys.dm_exec_query_stats DMV は、過去に実行されたクエリに関する統計情報を提供します。
これらの DMV を使用するには、Transact-SQL (T-SQL) クエリを実行する必要があります。
SQL Server Profiler は、詳細な情報を提供しますが、使用するのが複雑です。
補足
- SSMS のバージョンによって、機能や操作方法が異なる場合があります。
- システム動的管理ビューを使用するには、T-SQL の知識が必要です。
- SQL Server Profiler を使用するには、SQL Server の管理権限が必要です。
- 上記の方法以外にも、サードパーティ製のツールを使用してクエリ履歴を表示することができます。
- クエリ履歴は、データベースのセキュリティとパフォーマンスを監査するために使用できます。
システム動的管理ビューを使用する
SELECT
start_time,
total_elapsed_time,
execution_count,
text
FROM sys.dm_exec_query_stats
WHERE text LIKE '%your_search_term%';
SQL Server Profiler を使用する
- SQL Server Profiler を起動します。
- 新しいトレースを作成します。
- イベント タブで、ストアドプロシージャ イベントを選択します。
- フィルタ タブで、ストアドプロシージャ名 フィールドに
your_stored_procedure_name
を入力します。 - トレース メニューから トレースの開始 を選択します。
- ストアドプロシージャを実行します。
- 詳細 ペインで、クエリテキストを表示します。
SSMS の オブジェクトエクスプローラー を使用する
- オブジェクトエクスプローラーで、データベース ノードを展開します。
- 対象のデータベースを右クリックし、プロパティ を選択します。
- プロパティ ダイアログボックスで、履歴 ページを選択します。
- 履歴の表示 ボタンをクリックします。
SSMS の クエリエディター の コマンドウィンドウ を使用する
- クエリエディターで、コマンドウィンドウ を開きます。
- 次のコマンドを実行します。
EXEC sp_help_text 'your_stored_procedure_name';
このコマンドは、指定されたストアドプロシージャのクエリテキストを表示します。
サードパーティ製のツールを使用する
ApexSQL Complete や Redgate SQL Prompt などのサードパーティ製のツールを使用して、クエリ履歴を表示することができます。これらのツールは、SSMS よりも多くの機能を提供する場合があります。
注意事項
- クエリ履歴は、ディスク容量を占有するため、定期的にクリアする必要があります。
SSMS には、過去に実行したクエリ履歴を表示するためのいくつかの方法があります。どの方法を使用するかは、ニーズと環境によって異なります。
sql sql-server database