原理是先kill占用了数据库的那个进程,然后设置数据库为多用户模式。
USE master;
GO
DECLARE @SQL VARCHAR(MAX);
SET @SQL=''
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID)
FROM master..sysprocesses
WHERE dbid=DB_ID('数据库名');
EXEC(@SQL);
GO
ALTER DATABASE 数据库名 SET MULTI_USER
USE master;
GO
DECLARE @SQL VARCHAR(MAX);
SET @SQL=''
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID)
FROM master..sysprocesses
WHERE dbid=DB_ID('数据库名');
EXEC(@SQL);
GO
ALTER DATABASE 数据库名 SET MULTI_USER