sqlserver:查询锁住sql以及解锁方法

查看被锁表语句

--查看被锁表:

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语句

--生成解锁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以及解锁方法 的全部内容, 来源链接: utcz.com/z/342477.html

回到顶部