在Sql Server数据库中锁表解锁解决办法
在Sql Server数据库中,项目中需要写到存储过程,但是有些刚接触的小伙伴,
可能会出现写了 begin,没有 end 的情况,这种 SQL 语句可以保存到存储过程中,但是在执行存储过程的时候会出现锁的情况,这个时候就需要我们去进行解锁;
解锁语句如下:
第一步:
先运行下方的select语句,查询出锁的进程;
select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sys.dm_tran_locks where resource_type='OBJECT'
第二步:
解锁语句,需要将锁表进程@spid换成
上面查询出来的锁表进程;
declare @spid int
Set @spid = 75 --锁表进程
declare @sql varchar(1000)
set @sql='kill '+cast(@spid as varchar)
exec(@sql)
相关文章