在 2012 中使用旧版本的 SQL Server 数据库?

use*_*541 7 sql-server

我们被要求从 SQL Server 2008 R2 迁移到 2012,安装已在几个小时前完成。从 2008 年到 2012 年,我一直在尝试附加数据库。

它似乎没有任何效果。错误信息如下:

服务器“Development\SQLSERVER”的附加数据库失败。(Microsoft.SqlServer.Smo)
无法升级数据库“PS_EmpData”,因为此版本的 SQL Server 不支持其非发布版本 (539)。您无法打开与此版本的 sqlservr.exe 不兼容的数据库。您必须重新创建数据库。

我的意思是,这张表是一个相当大的数据库;并且重新创建所有插入所需的时间将是不真实的。我们仍在使用 SQL 2008 R2 进行生产,但 2012 年的开发过程正在进行中。

我的总体问题是,我们是否必须重新创建数据库才能使用 2012 或者是否有解决方法?

小智 7

错误消息中指示的版本 (539) 表示此数据库是 Sql Server 2000 数据库,因此在 Sql Server 2012 中不受支持请参见此处

可能在您的 SqlServer 2008R2 中,此特定数据库的兼容性级别设置为 Sql Server 2000。您可以尝试更改此级别,转到数据库的属性、选项页面并将兼容性级别更改为 2008,然后重试将数据库附加到数据库服务器 2012

  • 我也在这里写了博客:http://sqlblog.com/blogs/aaron_bertrand/archive/2010/11/18/sql-server-v-next-denali-restoring-a-sql-server-2000-database.aspx (3认同)