Sql-server – Find Locked Table in SQL Server

sql-serversql-server-2005sql-server-2008sql-server-2008-r2sql-server-2012

How can we find which table is locked in the database? Please, suggest.

Best Solution

You can use sp_lock (and sp_lock2), but in SQL Server 2005 onwards this is being deprecated in favour of querying 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