我目前正在阅读一本关于MVVM的书,我需要在下一部分使用Northwind数据库。不幸的是,当我尝试将Northwind添加到我的项目时,我收到以下错误:
“连接到数据库时发生错误。数据库可能不可用。发生类型为'Microsoft.Data.ConnectionUI.SqlDatabaseFileUpgradeRequiredException'的异常。错误消息为:'此数据库文件与当前实例不兼容SQL Server。'“
我还没有安装SQL Server,只安装了Visual Studio 2012.本书指示我将.MDF文件添加到项目中,将其设置为实体数据模型,然后从数据库生成。它在下一个屏幕上,我收到错误。我使用NORTHWND.MDF作为数据连接,实体连接字符串如下:
metadata = res:// /Model1.csdl|res:// /Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string =“data source =(LocalDB)\ v11.0; attachdbfilename = | DataDirectory | \ NORTHWND.MDF; integrated security = True; MultipleActiveResultSets = True; App = EntityFramework”
在书中,内容如下:
metadata = res:// /Model1.csdl|res:// /Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string =“Data Source =。\ SQLEXPRESS; AttachDbFilename = | DataDirectory | \ NORTHWND.MDF; Integrated Security = True; UserInstance = True”
我尝试过使用这两种数据源但都没有工作。
另外值得注意的是,随书附带的示例代码也不起作用。它编译并启动,但在服务器资源管理器中,NORTHWND.MDF在图标中有一个“x”,启动时没有数据存在。
当我尝试升级数据库时,收到错误消息:
“数据库'... \ NORTHWND.MDF'无法升级,因为此版本的SQL Server不支持其非发行版本(539)。您无法打开与此版本的sqlservr不兼容的数据库。 exe。您必须重新创建数据库......“
如果有人能给我任何关于如何使其工作的提示,我当然会感激。
答案 0 :(得分:1)
可能修复它的一种方法是,安装Sql Server 2012 Express并使用数据库连接到sql server。不要使用本地数据库。那可能有用。只是一个建议。
另外作为额外注意事项,您可能希望下载SQL Server 2012 Management Studio (我相信它附带上面的下载作为您选择的组件)。通过安装Management Studio,您可以单独测试数据库连接,创建表,运行查询等。这将使故障排除变得更加容易。
答案 1 :(得分:1)
默认情况下,Visual Studio不会安装任何数据库服务器,因此无法连接到一个数据库服务器。 MDF文件只是SQL Server存储其数据的文件,它不是一个独立的数据库。
您必须为两个连接字符串安装某些版本的SQL Server 2012 Express才能生效。
第一个连接字符串使用LocalDB功能,它基本上是SQL Server 2012 Exrpess(~35ΜΒ)的最小安装。您只能从您的计算机连接到LocalDB,这使其仅用于开发目的。
第二个连接字符串连接到本地计算机上安装的名为SQLExpress的SQL Server Express实际实例。第二个连接字符串将MDF文件作为用户实例附加到服务器,这意味着当您停止使用该文件时将释放该文件。
SQL Server Express的下载范围从130 MB到1.3 GB,具体取决于您下载的版本(使用高级服务的最小版本到完整版本)。
答案 2 :(得分:1)
Northwind数据库与2012不兼容,swind server 2012的Northwind数据库的兼容版本可以从下面的链接下载,下载.mdf文件后我们可以轻松地用sql server 2012附加它。我找到了以下它帮助了我,希望它会对你有所帮助。 How to Attach Northwind Database in Sql Server 2012
答案 3 :(得分:1)
如果我们尝试在.mdf
模式下将SQL Express
文件附加到我们的开发项目中,并在.mdf
文件夹中添加App_Data
文件时,我们会遇到如下异常:< / p>
"The database file is not compatible with the current instance of sql server...."
然后我们可以转到Server explorer
窗口→转到Data connections
→转到"your database"
→右键点击Modify connection
→查看Data sources
和{{ 1}},然后使用Windows Database file name
并按确定。
它对我有用。
答案 4 :(得分:1)
修改连接可能会解决问题,但我不确定此数据库文件的类型是否已更改。
如果已安装与数据库文件对应的数据库服务器,我找到了解决此问题的方法。您只需要更改visual studio的默认数据库服务器。
在菜单上,选择工具 - &gt;选项 - &gt;数据库工具,然后在数据连接上输入与您已安装的数据库文件对应的SQL Server实例名称,然后按确定。
下一步也很重要,有必要点击“刷新&#39;或删除数据连接中的数据库文件名并重新打开该文件,该文件将再次添加到数据连接并成功打开。
答案 5 :(得分:0)
这对我有用:
Advanced
。Data Source
。(localdb)\MSSQLlocalDB
更改为.\SQLEXPRESS
。答案 6 :(得分:0)
2.然后浏览你的mdf文件,按确定,它将自动转换数据库。