我从msdn有以下查询来恢复SQL Server数据库备份
RESTORE DATABASE <DBName> FROM DISK = '<BackupFilePath>\<BackupFileName>'
GO
如果要将备份加载到具有新名称的新数据库而不将其还原以替换当前的数据库,该怎么办?
在界面中我会选择Restore Files and Filegroups
并更改为数据库名称然后它会创建一个包含备份数据的新数据库,这是否可以通过简单查询实现?
答案 0 :(得分:1)
上面的恢复命令可用于指定新名称,但是当旧数据库仍存在于同一台计算机上时,您将收到错误,因为它将尝试对数据使用相同的文件名。您可以使用WITH MOVE子句来解决这个问题:
RESTORE DATABASE TestDB
FROM DISK = 'C:\Backup.BAK',
WITH MOVE 'AdventureWorks2012_Data' TO 'C:\MySQLServer\testdb.mdf',
MOVE 'AdventureWorks2012_Log' TO 'C:\MySQLServer\testdb.ldf';
GO
以上示例来自还原命令的MSDN文档: