SQL 单用户 锁表 解锁

USE master;
GO

DECLARE @SQL VARCHAR(MAX);

SET @SQL=‘‘

SELECT @SQL=@SQL+‘; KILL ‘+RTRIM(SPID)

FROM sysprocesses

WHERE dbid=DB_ID(‘WMS.MDF‘);

EXEC(@SQL);

GO

ALTER DATABASE [WMS.MDF] SET MULTI_USER;

 

查看被锁表:

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)

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。