首页 > 数据库 > mysql教程 > sqlserver查询锁住sql以及解锁的方法

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

一个新手
发布: 2017-10-18 10:23:28
原创
1727 人浏览过

--查看被锁表:

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以及解锁的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板