我已经从SQL Server 2012中的数据库创建了一个备份文件。
但我无法使用.bak
文件在SQL Server 2008r2的新数据库中恢复它。
它总是返回一个警告,表明强制转换无效(sqlmanager.ui)。
有没有办法恢复它?
答案 0 :(得分:1)
您不能执行此操作 - 您无法将数据库从较新版本的SQL Server附加/分离或备份/还原到旧版本 - 内部文件结构太不相同,无法支持向后兼容性。
您可以通过
解决此问题在所有计算机上使用相同版本的SQL Server - 然后您可以在实例之间轻松备份/恢复数据库
否则,您可以在SQL Server Management Studio(Tasks > Generate Scripts
中为结构(表,视图,存储过程等)和内容(表中包含的实际数据)创建数据库脚本)或使用第三方工具
或者您可以使用像Red-Gate SQL Compare和SQL Data Compare这样的第三方工具进行"差异化"在源和目标之间,根据这些差异生成更新脚本,然后在目标平台上执行这些脚本;这适用于不同的SQL Server版本。