我不得不删除并再次恢复数据库。我能够删除,但在恢复时出现错误。有人能帮我解决这个问题吗

我不得不删除并再次恢复数据库。我能够删除,但在恢复时出现错误。有人能帮我解决这个问题吗
use [master]

drop database [databasename]

我收到以下错误

无法删除数据库,因为数据库正在使用中

然后我将以下脚本运行到 deop 数据库并且它起作用了。

use [master]
go
Alter Database [databasename]
SET SINGLE_USER With ROLLBACK IMMEDIATE
go
go
drop database [databasename]
go

然后我运行了下面的脚本并得到了错误部分,该部分位于脚本部分下方

use[master]
IF
EXISTS (SELECT name FROM master.dbo.sysdatabases WHERE name = N'databasename')
DROP

DATABASE [databasename]
GO

我有 5 滴这样的液体,我在这里取了一些……为了发布目的

RESTORE

DATABASE [databasename] FROM
DISK 

= N'C:\dbbak\mybatabase.bak' WITH
FILE

= 1,
MOVE

N'my.C.Data' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\databasename.MDF',
MOVE

N'my.C.Log' TO N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\databasename.ldf',
NOUNLOAD

, REPLACE, STATS = 10

我以同样的方式进行了一些恢复。

我现在得到的错误是

数据库“databasename”不存在。请确保正确输入名称。

消息 911,级别 16,状态 1,行 1

数据库“databasename”不存在。请确保正确输入名称。

消息 911,级别 16,状态 1,行 1

答案1

您是否尝试恢复或附加?

您的日志文件是否已损坏?您是否事先尝试运行过 DBCC CheckDB?

您的数据库恢复命令是什么样的?

将数据库 [DBNAme] 备份到磁盘 = N'C:\mylocation\DBName.BAK',使用 NOFORMAT、NOINIT、MEDIANAME = N'MediaSet'、NAME = N'Database-Full Database Backup'、SKIP、NOREWIND、NOUNLOAD、STATS = 10 GO

检查并确保您的逻辑名称相同。

我还会检查您的位置。您的所有 bak 文件都在 C:\dbbak\mybatabase.bak 中吗?

您确定恢复位置 - C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA 吗?

相关内容