sql锁进程相关操作

创建死锁

    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

posted @ 2013-04-05 16:57  顿金  阅读(205)  评论(0编辑  收藏  举报