Rumah > Artikel > pangkalan data > 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
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 被锁表名
Atas ialah kandungan terperinci sqlserver查询锁住sql以及解锁的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!