12

現在実行中のストアド プロシージャがあり、特定のクエリでハング/ロックしているようです。どのクエリを確認できますか? できればprocを変更せずに。

使用する

DBCC Inputbuffer (65)

私にくれます

言語イベント 0 EXEC mySP;

4

3 に答える 3

17
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 
于 2012-02-15T12:50:25.363 に答える
2

現在実行中のクエリに関する拡張情報を取得するための優れたストアド プロシージャがあります。http://whoisactive.comからダウンロードできます 。

于 2012-02-15T12:53:21.187 に答える
1

SQL プロファイラーを使用します。名前が示すように、これは SQL Server の主要なプロファイリング ツールであり、プロシージャ内の各ステートメントの実行時間を表示できます。

于 2012-02-15T13:00:06.493 に答える