从备份还原数据库如果不用with move来指定文件路径,则默认把数据文件和日志文件存放到与原数据库相同的文件路径中,这样可能会产生错误,执行下面的语句:
restore database SmartDev_11_28
from disk='D:\Backup\SmartDev_20170904010000_413.bak'
得到如下的错误信息:
想要在语句中指定文件路径需要用with move,
restore database 数据库名
from disk='备份文件路径'
with move '数据库逻辑文件名' to '还原后数据库数据文件存放路径'
move '数据库逻辑日志名' to '还原后数据库日志文件存放路径'
这里的逻辑文件名和逻辑日志名可以通过下面的语句来查看:
restore filelistonly
from disk='D:\Backup\SmartDev_20170904010000_413.bak'
还原代码如下:
restore database SmartDev_11_28
from disk='D:\Backup\SmartDev_2017