【SQL Server】判断表格是占锁

查看当前锁的会话

 1 SELECT 
 2     request_session_id AS 'Session ID',
 3     resource_type AS 'Resource Type',
 4     resource_database_id AS 'Database ID',
 5     resource_associated_entity_id AS 'Object ID',
 6     resource_description AS 'Resource Description',
 7     request_mode AS 'Lock Mode'
 8 FROM 
 9     sys.dm_tran_locks
10 WHERE 
11     resource_database_id = DB_ID('YourDatabaseName');

 查看等待锁的会话

 1 SELECT 
 2     r.session_id, 
 3     r.status, 
 4     r.wait_type, 
 5     r.wait_time, 
 6     r.blocking_session_id, 
 7     t.text AS 'Running Query'
 8 FROM 
 9     sys.dm_exec_requests r
10 CROSS APPLY 
11     sys.dm_exec_sql_text(r.sql_handle) t
12 WHERE 
13     r.blocking_session_id <> 0;

 查看锁的持有者和等待者信息

1 -- 查看当前锁信息
2 EXEC sp_lock;

 

posted @ 2025-03-06 16:01  陆陆无为而治者  阅读(3)  评论(0编辑  收藏  举报