无法附加数据库?

时间:2015-03-27 05:36:34

标签: sql database sql-server-2008

我使用SQL Server 2008创建了一个数据库并将其分离。

当我尝试在另一台服务器上重新连接时,我收到此消息:

  

TITLE:Microsoft SQL Server Management Studio

     

附加服务器的数据库失败' X-PC&#39 ;. (Microsoft.SqlServer.Smo)

     

其他信息:

     

执行Transact-SQL语句或批处理时发生异常。 (Microsoft.SqlServer.ConnectionInfo)

     

数据库'管理'无法打开,因为它是版本661.此服务器支持版本655及更早版本。不支持降级路径   无法打开新数据库' manage_test'。 CREATE DATABASE被中止   (Microsoft SQL Server,错误:948)

1 个答案:

答案 0 :(得分:0)

您无法将数据库从SQL Server的较新版本下载/分离/恢复到旧版本 - 内部文件结构太不同了支持向后兼容性。

在您的情况下,您有一个SQL Server 2008 R2 数据库(版本661),并且您尝试将其附加到SQL Server 2008 服务器(版本) 655)。这不起作用,因为SQL Server 2008 2008 R2 两个不同的版本 - 它们在兼容时从2008 R2“下降”到2008年。

您可以通过

解决此问题
  • 在所有计算机上使用相同版本的SQL Server - 然后您可以在实例之间轻松备份/恢复数据库

  • 否则,您可以在SQL Server Management Studio(Tasks > Generate Scripts中为结构(表,视图,存储过程等)和内容(表中包含的实际数据)创建数据库脚本)或使用第三方工具

  • 或者您可以使用Red-Gate的SQL CompareSQL Data Compare之类的第三方工具在源和目标之间进行“差异化”,根据这些差异生成更新脚本,然后在目标平台上执行这些脚本;这适用于不同的SQL Server版本。