我在Visual Studio 2010中使用EF 4.1,我想我的服务器上的SQL服务器数据库是2008R2(因为我想使用从VS的EF迁移工具在VS)。
工具: http : //visualstudiogallery.msdn.microsoft.com/df3541c3-d833-4b65-b942-989e7ec74c87/
问题是,迁移工具抱怨数据库的版本太旧(90)..所以我计算了2008R2它希望它是100。

我在数据库机器上安装了(不知何故)sql server 2005,2008,2008r2。 那为什么不创build一个2008r2数据库呢?
我试图改变自己的兼容性水平,但其限制在90,80和70,并没有显示100。
然后我在机器上安装了sql server 2012,希望能够升级dbs,并允许我更改为100,但仍然没有。
那么如何将下面的dbs转换为100,并将服务器核心更改为使用2008r2或2012?

我的解决scheme
从“SqlExpress”实例中分离所有DBS。 并保存到桌面。 从添加/删除程序中卸载Sql Server 2005 – 实例“SqlExpress”。 将文件夹MSSQL.1 / MSSQL.2移动到桌面(如果这些文件夹包含您的2005年数据 – 您可能需要closuressqlserver进程)运行2008R2快速安装,新安装。 创build“SqlExpress”实例。 指定一个密码。 运行MSSMS并连接到SqlExpress实例。 将所有dbs移回数据目录,然后重新连接。
我肯定会在这里做一些清理,而不是升级,我会删除所有types的SQL Server,并安装你想要的引擎,说2008R2。 可能出现的情况是,您命名的实例与SQLEXPRESS实例运行的版本不同。
一旦你安装了你的引擎2008R2,只需要附加你的旧的2008或者2005的数据库,升级就会自动进行。 但是,正如@ken White所build议的那样,请记住,一旦数据库使用更新的版本,就不能使用旧版本。