我有SQL Server 2012而且我正在尝试附加以前与SQL Server 2012一起使用的数据库,令人惊讶的是我收到以下错误:
无法打开数据库'DatabaseName',因为它是版本 706.此服务器支持版本622及更早版本。不支持降级路径。
我真的不明白这是怎么发生的,因为就像我说它与2012版本一样使用。我究竟做错了什么?我怎样才能使它工作?请详细说明如何解决这个问题。
谢谢!
答案 0 :(得分:1)
错误听起来就像您尝试将数据库附加到的服务器不是SQL Server 2012.这可能是您正在使用的Management Studio / Management Studio Express的版本,但我怀疑SELECT @@VERSION;
会告诉您你有别的东西。如果您安装了多个SQL Server实例,它可能只是一个连接字符串混合,否则您应该download and install SQL Server 2012 Express from here。
答案 1 :(得分:0)
听起来你有以下配置和源数据库:
如前所述,您可以为SQL Server 2008安装SSMS(在卸载SSMS for SQL Server 2012之后)。然后你必须为这个版本编写数据库脚本并通过'Tasks> Script ...'重新运行脚本,记住设置目标服务器版本,如下所示。
在脚本编写之后,您可以使用导入/导出向导导出数据,然后将数据导入新的(降级的数据库),假设数据库没有仅限2012的数据类型(例如序列)。
另一个考虑因素是数据库兼容级别,如下所示。您可以拥有一个SQL Server 2012实例,该实例托管具有各种兼容级别的数据库。
答案 2 :(得分:0)
使用SELECT @@VERSION
对我来说效果很好。您的数据库引擎已连接到2008 DB,当然不允许您附加。一旦我将数据库引擎更改为连接到2012 DB,它就适用于我。
检查数据库引擎连接。您可以使用2012 Management Studio,但仍可连接到2008 DB。这就是我发生的事情,我用SELECT @@ VERSION解决了它。