我如何附加数据库?

时间:2012-04-30 07:42:44

标签: sql sql-server sql-server-2008 sql-server-2005

当我想附加数据库时,会发生错误:

  

无法打开数据库'Almizan',因为它是版本661.
  此服务器支持655及更早版本。不支持降级路径   无法打开新数据库'Almizan'。 CREATE DATABASE被中止   (.Net SqlClient数据提供程序)

帮我附上这个数据库。

3 个答案:

答案 0 :(得分:5)

安装SQL Server 2008 EXPRESS R2。 Web平台安装程序中存在一个错误,它仍然认为EXPRESS R1是最新版本。

SQL Server 2008数据库的版本为655. SQL Server 2008 R2数据库为661.您尝试将2008 R2数据库(v.661)附加到2008实例,但这不受支持。数据库升级到2008 R2版本后,无法降级。您必须将2008 SP2实例升级到R2,或者必须将该数据库中的数据复制到2008数据库中(例如,使用数据迁移向导或类似的东西)。

该消息具有误导性,至少可以说是662,因为SQL Server 2008 SP2确实支持662作为数据库版本,这是在数据库中启用了15000个分区时,请参阅支持15000 Partitions.docx。启用支持将数据库版本提升至662,禁用它会将其移回655.但SQL Server 2008 SP2不支持661(R2版本)。

答案 1 :(得分:2)

认为您需要将尝试将数据库附加到SQL Server 2008 R2(661)的SQL Server 2008实例(655)升级到数据库实际创建的版本。

请参阅SQL Server: Attach incorrect version 661

答案 2 :(得分:1)

MSDN上的这个答案似乎告诉我们显而易见的 http://social.msdn.microsoft.com/Forums/en-US/sqlexpress/thread/01ed3b1c-6f29-4518-a3a4-e4e35decc05f/

  

将数据库附加到SQL Server 2008以将其压缩时   数据库已自动从SQL 2005升级到SQL   从磁盘结构的角度来看Server 2008。一个内部   升级脚本已经运行并修改了磁盘上的结构   数据库到那个新版本。这可以在版本655中看到。   完成此操作后,您将无法再附加已升级的数据库   对于较低版本的SQL Server,它将失败并显示您的错误   可见

     

这与数据库的兼容性级别无关。   相容性水平仅阻止引擎使用某些   新功能。

     

为了再次获取SQL Server 2005上的数据库,您需要   新建数据库并导出/导入数据,例如   使用导出/导入向导。

     

Ulrike - MSFT