创建死锁
begin tran select * from paymenthistory WITH (TABLOCKX) --WAITFOR DELAY '00:00:10' 延时,相当于sleep commit tran--注释该句后将产生死锁
查找被锁的进程
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName FROM sys.dm_tran_locks --sys.dm_exec_sessions --sys.dm_exec_requests WHERE resource_type='OBJECT' --spid :被锁进程ID。 --tableName:发生死锁的表名。
杀进程
--只需要使用kill关键字来杀掉被锁的进程ID就可以对表进行解锁 kill 56 --56为被锁进程ID
--以下查询也可显示SQL SERVER LOCK信息
EXEC sp_lock
select * from master.dbo.syslockinfo
--以下查询显示当前会话的会话ID 值
SELECT @@SPID