ロックの状態を調べる


ロックの状態を調べるSQLは以下の通り

SELECT
resource_type as オブジェクトの種類,
resource_associated_entity_id as エンティティID,

(CASE when resource_type = 'OBJECT' then 
	OBJECT_NAME(resource_associated_entity_id)
else
	(SELECT OBJECT_NAME(Object_id) from sys.partitions Where hobt_id=resource_associated_entity_id)
end)	as	オブジェクト名,

request_mode as ロックの種類,
request_type as 要求の種類,
request_status as 状態,
request_session_id	as	セッションID
From sys.dm_tran_locks
WHERE [resource_type]<>'DATABASE'
order by request_session_id


動作確認環境:SQL server 2008