禁用LocalDB自动升级

时间:2012-09-05 02:33:58

标签: sql-server sql-server-2012 localdb

使用LocalDB(SQL Server 2012)连接到SQL Server 2008 R2数据库后,现在我无法从SQL Server 2008 R2连接:

  

无法打开数据库'Northwind',因为它是版本706。   此服务器支持663及更早版本。降级路径不是   支撑。

显然LocalDB执行了自动升级。

是否存在禁用自动升级的连接字符串参数?

1 个答案:

答案 0 :(得分:1)

不,SQL Server在附加具有较低格式版本的数据库时始终执行升级。为了避免升级,您必须使用不存在的SQL Server 2008 R2中的LocalDB,因为在SQL Sever 2012中引入了LocalDB。

更新1

提供完整的答案:理论上你可以将数据库附加为只读,应该阻止它升级(我不是100%肯定,需要测试和验证)。显然,至少有两个大问题。首先,数据库是只读的,在大多数情况下意义不大。其次,我认为没有任何连接字符串属性会强制AttachDbFileName以只读方式附加数据库。如果目标是简单的,你需要通过T-SQL脚本显式地附加它,这可能会破坏目的。