我最近将数据库从“SQL Server 2005 SP1”实例移动到了“SQL Server 2008 SP1”(使用分离-附加)。我现在需要将其移回,但失败并显示以下错误:

无法打开数据库“MyDB”,因为它是版本655。此服务器支持版本612和更早版本。不支持降级路径。

经过一些研究,我认为这与新数据库选项“Vardecimal Storage Format”有关,该选项已以某种方式设置为我所有数据库的ON。我没有对此进行设置,但是如果我在Management Studio(2008)中检查数据库选项,则可以看到我所有数据库的数据库选项都设置为“True”。另外,该特定选项在UI中被禁用,因此无法将其关闭。

然后,我尝试了以下操作将其关闭:

exec sp_db_vardecimal_storage_format'MyDB','OFF'


报告成功,但是当我检查选项时,它仍然处于打开状态。

然后,我阅读了这篇非常详细的文章:“http://msdn.microsoft.com/en-us/library/bb508963.aspx”,其中指出了关闭此选项的以下要求:

  • 确保没有表使用vardecimal存储。已确认。
  • 将恢复模式设置为简单并进行完整备份。我做到了

  • 但是,这些都没有任何区别。该选项仍处于启用状态,我无法更改。

    这两个SQL Server实例均为Express Edition(无论如何,它都不应支持Vardecimal存储格式)。

    关于如何关闭此选项的任何想法?

    最佳答案

    vardecimal是一个红色鲱鱼,因为无论此设置为true,false或不存在,都无法降级数据库。之前有人问过:Another questionagain

    Vardecimal在SQL Server 2008中已弃用,并已由行/表的压缩取代。

    09-07 07:04