此数据库处于单用户模式,当前某个用户已与其连接

新建查询,直接执行下面语句创建存储过程:

USE [master]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
–建一个存储过程,断开所有用户连接。
create proc [dbo].[killspid] (@dbname varchar(20))
as
begin
declare @sql nvarchar(500)
declare @spid int
set @sql=‘declare getspid cursor for
select spid from sysprocesses where dbid=db_id(’‘’+@dbname+‘’‘)’
exec (@sql)
open getspid
fetch next from getspid into @spid
while @@fetch_status<>-1
begin
exec('kill '+@spid)
fetch next from getspid into @spid
end
close getspid
deallocate getspid
end
GO

先在master中创建一个存储过程,用于干掉所有连接,然后执行下面语句调用

use master
exec killspid ‘出问题的数据库名’

转载自:https://www.cnblogs.com/zqh-/p/7412663.html

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐