-- 将目标数据库置为多用户状态
--报错误:
--消息 5069,级别 16,状态 1,第 1 行
--错误:924 数据库已打开,并且一次只能有一个用户访问
方法1:
EXEC sp_who2 ;
go
--找到连接当前单用户的进程,若太多了,考到excel里找一下。
kill spid
go
ALTERDATABASE 库名 SET MULTI_USER;
go
针对 SQL Server 2008 SQL Server 2005
use master
declare @databasename varchar(255)
set@databasename='[数据库名]'
-- 将目标数据库置为单用户状态
exec sp_dboption@databasename, N'single', N'true'
-- 修复数据库dbcc checkdb(@databasename,REPAIR_REBUILD)
-- 将目标数据库置为多用户状态
exec sp_dboption@databasename, N'single', N'false'
针对 SQL Server 2012
USE master;
GO
ALTER DATABASE AdventureWorks2012
SET SINGLE_USERWITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE AdventureWorks2012
SET READ_ONLY;
GO
ALTER DATABASE AdventureWorks2012
SET MULTI_USER;
GO