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

前端之家收集整理的这篇文章主要介绍了sqlserver:查询锁住sql以及解锁方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

查看被锁表语句

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)

解锁语句

sql;"> -- 解锁: DECLARE @spid INT SET @spid = 52--锁表进程 DECLARE @sql VARCHAR (1000) SET @sql = 'kill ' + CAST (@spid AS VARCHAR) EXEC (@sql)

生成解锁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以及解锁方法的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅:sql语句优化技术要点解析等,如果有什么问题,可以随时留言,小编会及时回复大家,努力给广大编程爱好及工作者提供更优质的文章及更好的阅读体验。感谢朋友们对本站的支持

原文链接:https://www.f2er.com/mssql/62577.html

猜你在找的MsSQL相关文章