Eu tenho um banco de dados e quero forçar uma restauração por cima dele.
Eu marquei a opção:
- Substituir o banco de dados existente (WITH REPLACE)
Mas,comoesperado,oSSMSnãopodesobrescreverobancodedadosexistente.
Claroquenãoqueronomesdearquivodiferentes;Euquerosobrescreverobancodedadosexistente.
Comofaçoparaforçarumarestauraçãoemumbancodedadosexistente?
EparaorastreadordepesquisadoGoogle:
File'%s'isclaimedby'%s'(4)and'%s"(3). The WITH MOVE clause can be used to relocate one or more files.
RESTORE DATABASE is terminating abnormally. (Microsoft SQL Server, Error: 3176)
Atualizar
O script (antes de eu excluir o banco de dados, porque eu precisava fazê-lo) era:
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
Eu usei a interface do usuário para excluir o banco de dados existente, para que eu pudesse usar a interface do usuário para forçar uma substituição do banco de dados (não) existente.
Espero que possa haver uma resposta para que o cara seguinte possa ter uma resposta.
Não, ninguém estava no contexto do banco de dados (a mensagem de erro de outras conexões é bem diferente desse erro, e eu só consegui ver esse erro depois que eu matei as outras conexões).