我正在尝试从同一台服务器上的旧数据库备份创建一个新数据库。 当使用 SQL server management studio 并尝试从备份恢复到新数据库时,出现此错误
System.Data.SqlClient.SqlError: The backup set holds a backup of a database
other than the existing 'test' database. (Microsoft.SqlServer.Smo)
谷歌搜索后我找到了这段代码
RESTORE DATABASE myDB
FROM DISK = 'C:\myDB.bak'
WITH MOVE 'myDB_Data' TO 'C:\DATA\myDB.mdf',
MOVE 'myDB_Log' TO 'C:\DATA\myDB_log.mdf'
GO
我想知道移动语句是否会弄乱备份来自该服务器上的数据库?
谢谢,感谢所有帮助。
最佳答案
我应该做什么:
- 单击 SQL Server Management Studio 上右键单击“数据库”节点时出现的“恢复数据库...” float 菜单。
- 使用要恢复的数据库和新名称填充向导。
- 重要如果数据库仍然存在,请更改"file"选项卡中的“还原为”文件名,以避免出现“文件已在使用,无法覆盖”的错误消息。
我做什么
我知道为什么我更喜欢这样做:
- 我用我最喜欢的参数创建了一个空白的目标数据库。
- 然后,在“SQL Server Management Studio”恢复向导中,我寻找覆盖目标数据库的选项。它位于“选项”选项卡中,名为“覆盖现有数据库(WITH REPLACE)”。检查一下。
- 记得在"file"页面选择目标文件。
您可以更改向导左侧的“选项卡”(常规、文件、选项)
关于sql - 从同一台服务器上另一个数据库的备份创建新数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10299811/