如何强制对现有数据库进行还原?

我有一个数据库,我想强制恢复它的顶部。

我检查选项:

  • 覆盖现有数据库(WITH REPLACE)

在这里输入图像说明

但是,正如所料,SSMS无法覆盖现有的数据库。

当然,我不想要不同的文件名。 我想覆盖现有的数据库。

我如何强制恢复现有的数据库?

而对于Googlesearch爬虫:

文件'%s'由'%s'(4)和'%s'(3)声明。WITH MOVE子句可用于重定位一个或多个文件。
RESTORE DATABASE正在终止exception。 (Microsoft SQL Server,错误:3176)

更新

脚本(在我删除数据库之前,因为我需要完成)是:

RESTORE DATABASE [HealthCareGovManager] FILE = N'HealthCareGovManager_Data', FILE = N'HealthCareGovManager_Archive', FILE = N'HealthCareGovManager_AuditLog' FROM DISK = N'D:\STAGING\HealthCareGovManager10232013.bak' WITH FILE = 1, MOVE N'HealthCareGovManager_Data' TO N'D:\CGI Data\HealthCareGovManager.MDF', MOVE N'HealthCareGovManager_Archive' TO N'D:\CGI Data\HealthCareGovManager.ndf', MOVE N'HealthCareGovManager_AuditLog' TO N'D:\CGI Data\HealthCareGovManager.ndf', MOVE N'HealthCareGovManager_Log' TO N'D:\CGI Data\HealthCareGovManager.LDF', NOUNLOAD, REPLACE, STATS = 10 

我用UI来删除现有的数据库,以便我可以使用用户界面强制 覆盖 (非)现有的数据库。

希望能有一个答案,让下一个家伙可以有一个答案。

不,没有人在数据库的上下文中(来自其他连接的错误消息与这个错误是完全不同的,而且在我杀死了其他连接之后我只能看到这个错误)。

您有2个数据库文件试图还原到相同的物理文件。

 MOVE N'HealthCareGovManager_Archive' TO N'D:\CGI Data\HealthCareGovManager.ndf', MOVE N'HealthCareGovManager_AuditLog' TO N'D:\CGI Data\HealthCareGovManager.ndf', 

改变这些物理path之一,你的错误应该消失。

看起来您正在尝试将两个文件( HealthCareGovManager_ArchiveHealthcareGovManager_AuditLog )写入相同的目标文件(D:\ CGI Data \ HealthCareGovManager.ndf)。

他们必须去单独的文件或SQL Server将运行到您所看到的文件使用问题。