首页 > 代码库 > 因为数据库正在使用,所以无法获得对数据库的独占访问权

因为数据库正在使用,所以无法获得对数据库的独占访问权

执行sql语句还原数据库时报 “因为数据库正在使用,所以无法获得对数据库的独占访问权”

 

加上这两句就解决了:

ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE--sql还原语句ALTER  database  [ datebase]  set   online  

如下:

Declare @strDataBaseName varchar(50)Declare @FileFlag varchar(50) --定义备份的数据库名称Set @strDataBaseName=数据库名Set @FileFlag=d:\db_backup\+@strDataBaseName + _db_ + replace(convert(char(20),getdate(),112), ,‘‘)+.bak--加上这句防止数据库正在使用导致执行不成功ALTER DATABASE [数据库名] SET OFFLINE WITH ROLLBACK IMMEDIATErestore database [数据库名]from disk=@FileFlag  with file=1,REPLACE,recovery  ALTER  database  [数据库名]  set   online  

 

因为数据库正在使用,所以无法获得对数据库的独占访问权