最进工作中发现明明表数据很少,可是查询很慢,于是就猜想,是不是被锁啦,因此就有了下面语句。当然这些语句也只能解燃眉之急,根本解决办法还需要自己去排查表被锁的原因~~
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sys.dm_tran_locks where resource_type='OBJECT'
spid 锁表进程
tableName 被锁表名
解锁:
declare @spid int
Set @spid = 57 --锁表进程
declare @sql varchar(1000)
set @sql='kill '+cast(@spid as varchar)
exec(@sql)