Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > ADP及SQL SERVER

SQL Server还原失败(数据库正在使用,无法获得对数据库的独占访问权)

时 间:2018-11-30 08:47:25
作 者:缪炜   ID:24010  城市:江阴
摘 要:SQL Server还原失败(数据库正在使用,无法获得对数据库的独占访问权)的解决方法
正 文:

有次我在SQL Server上还原备份的文件,出现了“因为数据库正在使用,所以无法获得对数据库的独占访问权。”的错误,试了几个方法都不行,最好只能用了T-SQL的方式,执行备份数据库操作

use master
go
---声明变量
declare @dbName nvarchar(max)='HHData';
declare @dbFullName nvarchar(max)='C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Backup\20181123';
--1.1修改为单用模式
 exec(N'Alter DATABASE '+@dbName+' SET SINGLE_USER WITH ROLLBACK IMMEDIATE');
--1.2结束链接进程
	DECLARE @kid varchar(max)  
	SET @kid=''  
	Select @kid=@kid+'KILL '+CAST(spid as Varchar(10))  FROM master..sysprocesses  
	Where dbid=DB_ID(@dbName)  ;
	EXEC(@kid) ;
--2.执行还原语句
   restore database @dbName from  disk=@dbFullName
   with replace  --覆盖现有的数据库
--3.重置数据库为多用户模式
 exec(N'Alter DATABASE '+@dbName+' SET MULTI_USER WITH ROLLBACK IMMEDIATE');




Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助