我正在尝试在VS 2012中构建一个连接到2008 SQL Express数据库文件的连接字符串。我收到一个错误对话框:
此数据库文件与当前的SQL实例不兼容 服务器。要解决此问题,您必须升级数据库文件 创建新数据连接,或者您必须修改现有数据连接 连接到此数据库文件。有关更多信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=235986
我按照微软总是非常有用的文档链接(咳嗽,咳嗽......)。当我完成升级数据库功能时,我没有收到升级文件的提示。我真的希望使用LocalDb而不必安装SQL Express 2008.有什么想法吗?
OTHER:为什么Visual Studio在这些年后没有实现点击错误对话框中的链接?实施真的很难吗?
答案 0 :(得分:50)
我的简单方法:
答案 1 :(得分:22)
根据我几个月前的经历:
忘记尝试在Visual Studio 2012中打开旧的SQL Server Express
.mdf
文件。在将旧的VS 2010解决方案转换为VS 2012的过程中,它告诉您可以通过双击数据库文件并将其升级为使用LocalDb。这是一个完全的谎言! :d
打开SQL Server Management Studio,选择Databases
节点,右键单击它并选择Attach...
。
提供.mdf
文件的路径,单击“确定”然后您应该好好去。
现在在Visual Studio 2012
内,打开Server Explorer
(菜单View -> Server Explorer
),右键点击Data Connections
,然后选择Add Connection...
。在Server name:
put (localdb)\v11.0
和Connect to a database:
中选择之前附加的数据库。
右键点击Data Connection
中刚刚添加的Solution Explorer
,然后选择Properties
。复制Connection String
媒体资源,并使用此值替换Web.Config
或App.Config
。
注意:在SQL Server Management Studio
我尝试附加从DayPilot的此示例项目获得的旧.mdf
文件时遇到错误:Scheduler for ASP.NET MVC 4 Razor (C#, VB.NET, SQL Server)。它与.log
数据库文件附带的.mdf
文件的路径问题有关。我刚刚在.log
对话框窗口中选择了Attach...
文件条目并将其删除。然后尝试再次附加数据库并且工作正常。
答案 2 :(得分:1)
你可以这样做:
USE [master]
GO
CREATE DATABASE [database_name] ON
( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\<database name>.mdf' ),
( FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Data\<database name>.ldf' )
FOR ATTACH ;
GO
如下所述:http://technet.microsoft.com/en-us/library/ms165673%28v=sql.105%29.aspx
答案 3 :(得分:0)
转到VisualStadio 2012 在Server Explorer Windows中 打开数据连接 右键单击ASPNETDB.MDF 点击修改连接... 为您打开一个新窗口......您只需单击“确定”即可 如果其他窗口打开,请单击是
答案 4 :(得分:0)
打开sql server管理工作室 连接localDB 删除deattach同名mdf文件 然后附上你的mdf文件
去视觉工作室 在服务器资源管理器 - &gt;数据连接 右键单击您的数据库 - &gt;修改连接 - &gt;文字连接 - &gt;单击确定