Heim >Datenbank >MySQL-Tutorial >VS2008连接SQL Server数据库文件出错的解决方法

VS2008连接SQL Server数据库文件出错的解决方法

WBOY
WBOYOriginal
2016-06-07 17:56:441027Durchsuche

有园子里的朋友问到一个问题:系统上安装的是vs2008+Sql 2005 developer(没有安装Sql server 2005 Express ) 用代码直接连SQL Server服务器没有问题,但在项目中数据源改用SQL Server数据库文件时出错,提示错误如下: 与SQL Server文件(*.mdf)的连接要

有园子里的朋友问到一个问题:系统上安装的是vs2008+Sql 2005 developer(没有安装Sql server 2005 Express )
用代码直接连SQL Server服务器没有问题,但在项目中数据源改用SQL Server数据库文件时出错,提示错误如下:
“与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件,……”
英文版为“Connections to SQL Server Files (*.mdf) require SQL Server Express 2005 to function properly.  Please verify the installation of the component or download from the URl: http:go.microsoft.com/fwlink/?linkID=49251.”

如图:

 

如果是因为实例名的问题,请先查看这个

http://www.jb51.net/article/31647.htm

我机器上装的是Vs2008 Team suite Sp1+sql server 2008  enterprise,尝试配置连接SQL Server数据库文件时出错同上图。
奇怪,难道数据库连接方式必须安装SQL server 2005 Express??
查看msdn等,没有看到有此限制,
http://www.microsoft.com/china/sql/prodinfo/features/compare-features.mspx
http://technet.microsoft.com/zh-cn/library/ms143761%28SQL.90%29.aspx
也看到有些文章
http://social.msdn.microsoft.com/Forums/en-US/sqlsetupandupgrade/thread/6503fe05-4d05-49e7-8c2a-b9778ab7e9b8

最后抱着试一试的想法,看看是否是因为数据库已附加到SQL server ,
尝试将示例文件,AdventureWorksLT2008_Log.mdf脱机
(注示例文件官方下载http://www.codeplex.com/Wiki/View.aspx?ProjectName=SqlServerSamples)
再连接,居然成功了!

连接过程如图:

 

 

 

 

 

 

 

 

 

需要注意的是:
脱机后,改用mdf文件直接连接,原来的逻辑文件AdVentureworksLT08.mdf对应的log文件自动失去关联,而产生了一个新的log文件,你可以关注一下数据库具体的位置,是一个mdf文件和两个log文件。
AdventureWorksLT2008_Data.mdf
AdventureWorksLT2008_Log.ldf
AdventureWorksLT2008_Data_log.ldf(这个文件是新增的,改用mdf文件添加后,原来的log文件不再起作用,感觉是换了新的连接方式和新的存储机制。)


 

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn