当前位置:Gxlcms > mysql > sqlserver查询锁住sql以及解锁的方法

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

时间:2021-07-01 10:21:17 帮助过:49人阅读

--查看被锁表:

  1. SELECT
  2. request_session_id spid,
  3. OBJECT_NAME(
  4. resource_associated_entity_id
  5. ) tableName
  6. FROM
  7. sys.dm_tran_locks
  8. WHERE
  9. resource_type = 'OBJECT'
  10. ORDER BY request_session_id ASC
  11. --spid 锁表进程
  12. --tableName 被锁表名

--根据锁表进程查询相应进程互锁的SQL语句
DBCC INPUTBUFFER (249)

-- 解锁:

  1. DECLARE
  2. @spid INT
  3. SET @spid = 52--锁表进程
  4. DECLARE
  5. @SQL VARCHAR (1000)
  6. SET @SQL = 'kill ' + CAST (@spid AS VARCHAR) EXEC (@SQL)

--生成解锁SQL

  1. SELECT
  2. DISTINCT 'DECLARE @spid INT SET @spid = ',request_session_id,' DECLARE @SQL VARCHAR (1000) SET @SQL = ''kill '' + CAST (@spid AS VARCHAR) EXEC (@SQL);' as s
  3. FROM
  4. sys.dm_tran_locks
  5. WHERE
  6. resource_type = 'OBJECT' --spid 锁表进程
  7. --tableName 被锁表名

以上就是sqlserver查询锁住sql以及解锁的方法的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行