web-dev-qa-db-ja.com

SQL Serverでロックされたテーブルを見つける

データベースでロックされているテーブルを見つけるにはどうすればよいですか?提案してください。

31
user47957

sp_lock (およびsp_lock2)。ただし、SQL Server 2005以降では、これは非推奨になっており、クエリの実行を支持しています sys.dm_tran_locks

select  
    object_name(p.object_id) as TableName, 
    resource_type, resource_description
from
    sys.dm_tran_locks l
    join sys.partitions p on l.resource_associated_entity_id = p.hobt_id
83
Mitch Wheat

sp_lock

Sp_lock情報を読み取るときは、OBJECT_NAME()関数を使用して、ID番号からテーブルの名前を取得します。次に例を示します。

SELECT object_name(16003073)

編集:

ID変換なしでオブジェクトを報告するMicrosoftによって提供される別のprocがあります: http://support.Microsoft.com/kb/q255596/

8
Learning