Sql Server 查询锁定相关语句
-- 查询资源等待者以及资源锁定者会话信息 select DB_NAME(resource_database_id) '数据库' ,obj.name '锁定对象' ,t1.resource_type '资源锁定类型' , t1.request_mode '等待者请求的锁定模式' ,t1.request_status ,t1.request_session_id '等待者SID' --,( -- select TEXT -- from sys.dm_exec_requests r -- cross apply -- sys.dm_exec_sql_text(r.sql_handle) -- where r.session_id = t1.request_session_id --) '等待者要执行的SQL' --,t2.blocking_session_id '锁定者SID' --,( -- select TEXT -- from sys.sysprocesses p -- cross apply -- sys.dm_exec_sql_text(p.sql_handle) -- where p.spid = t2.blocking_session_id --)'锁定者执行语句' from sys.dm_tran_locks t1 inner join sysobjects obj on t1.resource_associated_entity_id=obj.id left join sys.dm_os_waiting_tasks t2 on t1.lock_owner_address=t2.resource_address where t1.resource_type='OBJECT' order by t2.wait_duration_ms desc -- 查询指定会话的待执行sql语句 declare @sessionId int=55 -- 会话编号 declare @sqlHandle varbinary(max) -- 句柄 select @sqlHandle=sql_handle from sys.dm_exec_requests where session_id=@sessionId select @sessionId 'sessionId',* from sys.dm_exec_sql_text(@sqlHandle) -- 释放指定会话资源 --kill 51 ---- 查询数据库兼容级别 --GO --SELECT compatibility_level -- 2000-80;2005-90;2008-100;2012-110 --,* --FROM sys.databases --WHERE name = 'Products'; --GO