現在実行中のストアド プロシージャがあり、特定のクエリでハング/ロックしているようです。どのクエリを確認できますか? できればprocを変更せずに。
使用する
DBCC Inputbuffer (65)
私にくれます
言語イベント 0 EXEC mySP;
現在実行中のストアド プロシージャがあり、特定のクエリでハング/ロックしているようです。どのクエリを確認できますか? できればprocを変更せずに。
使用する
DBCC Inputbuffer (65)
私にくれます
言語イベント 0 EXEC mySP;
SELECT SUBSTRING(st.text, ( r.statement_start_offset / 2 ) + 1,
( ( CASE WHEN r.statement_end_offset <= 0
THEN DATALENGTH(st.text)
ELSE r.statement_end_offset END -
r.statement_start_offset ) / 2 ) + 1) AS statement_text
FROM sys.dm_exec_requests r
CROSS APPLY sys.dm_exec_sql_text(sql_handle) st
WHERE session_id = 65
現在実行中のクエリに関する拡張情報を取得するための優れたストアド プロシージャがあります。http://whoisactive.comからダウンロードできます 。
SQL プロファイラーを使用します。名前が示すように、これは SQL Server の主要なプロファイリング ツールであり、プロシージャ内の各ステートメントの実行時間を表示できます。