sql server中如何查看被死锁的表和进程
--查看被锁表:
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName from sys.dm_tran_locks where resource_type='OBJECT' order by tablename
--解锁:
declare @spid int Set @spid = 71 --锁表进程 declare @sql varchar(1000) set @sql='kill '+cast(@spid as varchar) exec(@sql)
--查询出死锁的SPID
select blocked from (select * from sysprocesses where blocked>0 ) a where not exists(select * from (select * from sysprocesses where blocked>0 ) b where a.blocked=spid)
--查死锁进程
select dbid,* from sys.sysprocesses where 1=1 --and spid >50 and blocked <> 0
--查看死锁的语句
dbcc inputbuffer(56)