--查看被锁表:
select
request_session_id spid,
object_name(
resource_associated_entity_id
) tablename
from
sys.dm_tran_locks
where
resource_type = 'object'
order by request_session_id asc
--spid 锁表进程
--tablename 被锁表名
--根据锁表进程查询相应进程互锁的sql语句
dbcc inputbuffer (249)
-- 解锁:
declare
@spid int
set @spid = 52--锁表进程
declare
@sql varchar (1000)
set @sql = 'kill ' + cast (@spid as varchar) exec (@sql)
--生成解锁sql
select
distinct 'declare @spid int set @spid = ',request_session_id,' declare @sql varchar (1000) set @sql = ''kill '' + cast (@spid as varchar) exec (@sql);' as s
from
sys.dm_tran_locks
where
resource_type = 'object' --spid 锁表进程
--tablename 被锁表名
以上就是sqlserver查询锁住sql以及解锁的方法的详细内容。