none
为什么VWD无法添加数据连接? RRS feed

  • 问题

  •  

    我已安装了MICROSOFT SQL SERVER 2005 EXPRESS EDITION WITH ADVANCED SERVICES SERVICE PACK 2,但在添加新项时选择SQL时提示说“与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件,……”?在添加数据连接时,测试连接成功,但选择任一数据库都提示错误:

    “无法添加数据库

    未能加载文件或程序集"Microsoft.SqlServer.Management.Sdk.Sfc,Version=10.0.0.0.0",Culture=neutral,

    PublicKeyToken=8945dcd8080cc91”或它的某一个依赖项。系统找不到指定的文件”

    2008年8月15日 0:28

答案

全部回复

  • 你好!
        你安装的VS是哪个版本的?
    2008年8月15日 2:12
    版主
  •  

    就安装了一个Visual Web Developer 2008 Express Edition with SP1
    2008年8月15日 2:26
  • 你安装了Management Studio组件了吗?
    2008年8月15日 3:19
    版主
  • 当然装了,该装的都装上了(包括Management Studio Express,Native Client,VSS编写器

    2008年8月15日 3:39
  • 我现在已经把SQL Server2005全卸载了,装上2008版的,只剩下第一个错误了:“与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件,……”

    VWD难道认不出已经安装SQL Server了吗?(05和08版的SQL Server都认不出)

    这算不算VWD的BUG?

    2008年8月15日 6:55
  • 你好!
        你启动SQL Server的服务了吗?默认是不启动的。有问题再来问我!
    2008年8月15日 7:47
    版主
  • SQL Server (SQLEXPRESS)是默认自动启动的

    SQL Server VSS Writer也是默认自动启动的

    SQL Server Browser,SQL Server 代理 (SQLEXPRESS),SQL Active Directory Helper 服务没启动,但手动启动SQL Server Browser后(SQL Server 代理 (SQLEXPRESS),SQL Active Directory Helper 服务启动不了),还是老样子。。不是服务的问题吧?要不我怎么可能成功连上数据库资源管理器里的数据库连接呢?

    2008年8月15日 9:39
  • 你好!
        似乎问题越来越奇怪了,VS2008 Express应该和SQL Server2005Express是可以搭配使用的,听了你的描述似乎你的Visual Web Developer 2008 Express无法认出已经安装了SQL Server2005,你把VWD重新安装试试看!
    2008年8月15日 13:09
    版主
  • 我拿安装盘修复安装了一下VWD with SP1,还是不行。我现在已经把SQL Server2005卸载了,装上SQL Server2008了,VWD with SP1可以识别SQL Server2008吗,还是只能识别SQL Server2005?

     

    2008年8月15日 14:28
  • 你好!
        如果你安装的VWD是2008版本的,应该既可以和SQL Server2005 Express有可以和SQL Server 2008 Express搭配使用的,一般不会出现你的问题,大家都是这样安装使用的!如果实在不行,你可以致电Microsoft,寻求他们的帮助!
    2008年8月16日 0:20
    版主
  •  

    VISUAL STUDIO 2008\WEBSITES\HELLOWORLD\APP_DATA\ASPNETDB.MDF' 的版本为 655,无法打开。此服务器支持 612 版及更低版本。不支持降级路径。

    这句话是什么意思?

    2008年8月16日 5:26
  • 这是ASP.NET程序连接数据库时使用的文件,你的机器过去安装过其他版本的VS吗?
    2008年8月16日 6:22
    版主
  • 没有。刚才把VWD和SQL Server全部卸载了再重新安装一遍,该删的目录都删除完了,VWD再次安装完还是无法识别SQL Server,这是为什么呢?VWD根据什么判断我未安装SQL Server呢,注册表的某个位置还是硬盘上的某个文件还是直接检查SQL Server Express服务是否启动?

     

    2008年8月16日 7:02
  • 你现在机器中到底安装了哪个版本的SQL Server呢?请详细点说明是Express版还是正式版呀!VMD只能和Sql Server的Express版搭配使用,好象只有你出现了这个问题,论坛中别人好象没有遇到,我也是头一次遇到,大家共同讨论吧!如果实在不行,我们就用笨方法吧,没办法。。。
    2008年8月16日 7:58
    版主
  •  

    现在是SQL Server 2005 Express和Visual Web Developer 2008 Express Edition with SP1(够清楚了吧)

    你说的笨办法是什么啊?格式化系统盘重装系统在装VWD和SQL Server?我刚才都说了已经把和VWD,SQL Server相关的东西全部卸载并重新安装了一次,还是不行唉。。。

    2008年8月16日 8:18
  • 你好!
           不要着急这样试一下:从VWD菜单组中点击SQL Server Configuration Manager然后选择SQL SERVER 2005 SERVICE,点中SQL SERVER(SQLEXPRES),再点上面工具栏的绿色的三角箭头,等待一会,直到SQL SERVER(SQLEXPRES)前面的停止的红色的方块变成绿色的三角播放箭头,然后再试一次添加连接,看看行不行?
    2008年8月16日 12:34
    版主
  • VWD的菜单组中没有SQL Server Configuration Manager,只有开始菜单的SQL Server 2005项里才有这个,这个服务是已启动的。我到现在为止在VWD里连接SQL Server都是成功的,但连接到SQL Server数据库文件都是失败的;在网站中添加Database.mdf时就说我未安装SQL Server2005~你知道VWD根据什么判断我未安装SQL Server2005的吗?要是我能调试VWD就好了^_^

     

    2008年8月16日 14:28
  • 呵呵!你不可能调试VWM那是打包好的,出了问题只能重装,要不你找微软的客服反映一下情况吧!
    2008年8月17日 0:05
    版主
  • 最后发张贴问一下以下情况你们是不是和我一样

    MICROSOFT SQL SERVER 2005 EXPRESS EDITION WITH ADVANCED SERVICES SERVICE PACK 2

    MD5:585D6BA7B595F7982655C5AE926E4A6D

    VS2008ExpressWithSP1CHSX1504735.iso

    MD5:BD1AA5E55AF96999AAD39B76FAB1C666

    OS:Vista SP1

    另外我是用虚拟光驱加载镜像安装的~

    顺便问一下,微软的VisualStudio客服电话号码是多少?

    2008年8月18日 3:47
  • 参考
    http://msdn.microsoft.com/zh-cn/library/bb264564.aspx
    使用Express Studio(请下载最新版)工具启用命名管道

    并使用下面的方法测试下


    -- Enable user instances.
    sp_configure 'user instances enabled','1'

    -- Disable user instances.
    sp_configure 'user instances enabled','0'


    http://msdn.microsoft.com/zh-cn/library/ms365247.aspx
    SQL Server 2008 联机丛书
    SQL Server Management Studio Express
    2008年8月19日 4:04
    版主
  • 你用管理工具可以连上吗?

     

    添加连接不用“Microsoft sql server数据文件”,用“Microsoft sql server”数据源看看

    2008年8月19日 4:08
    版主
  • 修改

    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config文件里的<connectionStrings>为相对应的sql版本的连接字符串

     

    2008年8月19日 4:47
    版主
  • 修改C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config文件的<connectionStrings>内sql连接字符串为你对应的sql版本连接字符串。

    2008年8月19日 4:49
    版主
  •  

    1、请你把数据库的连接字符串,像这样贴出来

    <add name ="ASPNETDBConnectionString1" connectionString ="Data Source= .\SQLEXPRESS; Integrated Security = True;  DataBase = ASPNETDB.MDF; User ID = MyWindowsUserName; Password = MyWindowsPassword; User Instance = False; Connect Timeout = 30"  providerName ="System.Data.SqlClient"/>

     

    看看你的用户名密码等情况。

     

    2、你用的操作系统是Vista,你看看你登陆Vista操作系统的用户是哪个用户?请告知。

    2008年8月19日 5:26
    版主
  •  

    1. 关闭该错误消息。
    2. 按 F 7 键打开对象资源管理器详细信息。
    3. 用鼠标右键单击列标题,并确保选中只在以下列:

    • 名称 
    • 日期已创建 
    • 策略运行状况 
    • 所有者 
     
    4. 用鼠标右键单击数据库节点,然后单击刷新 。

    2008年8月19日 6:12
    版主
  •  liujj_xujj 写:

     

    1、请你把数据库的连接字符串,像这样贴出来

    <add name ="ASPNETDBConnectionString1" connectionString ="Data Source= .\SQLEXPRESS; Integrated Security = True;  DataBase = ASPNETDB.MDF; User ID = MyWindowsUserName; Password = MyWindowsPassword; User Instance = False; Connect Timeout = 30"  providerName ="System.Data.SqlClient"/>

     

    看看你的用户名密码等情况。

     

    2、你用的操作系统是Vista,你看看你登陆Vista操作系统的用户是哪个用户?请告知。

    就这么一行:

    Data Source=Admin-PC\SQLEXPRESS;Initial Catalog=HelloWorld;Integrated Security=True

    (现在是windows身份验证)

    当前是Admin帐户登录的.

    2008年8月19日 7:47
  •  Sean Li 写:

    修改C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG\machine.config文件的<connectionStrings>内sql连接字符串为你对应的sql版本连接字符串。

     

     <connectionStrings>
      <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
     </connectionStrings>

    这句话应该怎么改呢?

    2008年8月19日 7:51
  •  feiyun0112 写:

    你用管理工具可以连上吗?

     

    添加连接不用“Microsoft sql server数据文件”,用“Microsoft sql server”数据源看看

    用管理工具当然可以连上,但我的意思是在菜单栏->添加新项->SQL Server数据库->确定,这时候会跳出一个错误框说我未安装SQL Server Express 2005,有哪位高手能告诉我这是为什么吗?我看到英文网站上SQL Server Express2005视频(mms://wm.microsoft.com/ms/msdn/vstudio/express/jan2007update/AbsoluteBeginnerSeries/VWD/07 VWD CS Lesson.wmv)里就这么点的。

    2008年8月19日 8:04
  • 只有这点?

    Data Source=Admin-PC\SQLEXPRESS;Initial Catalog=HelloWorld;Integrated Security=True

    不对吧。不完整阿。
    2008年8月19日 11:44
    版主
  •  liujj_xujj 写:

    只有这点?

    Data Source=Admin-PC\SQLEXPRESS;Initial Catalog=HelloWorld;Integrated Security=True

    不对吧。不完整阿。

    是不是在machine.configure里的这个啊?

     <connectionStrings>
      <add name="LocalSqlServer" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient"/>
     </connectionStrings>

    2008年8月19日 12:24
  • 貌似找到原因了。。在英文论坛上第一个人就基本给出结论了:.mdf没有默认文件关联,请教各位高手,是不是关联到C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\ssmsee.exe啊?
    2008年8月20日 3:58
  •  198710 写:
     feiyun0112 写:

    你用管理工具可以连上吗?

     

    添加连接不用“Microsoft sql server数据文件”,用“Microsoft sql server”数据源看看

    用管理工具当然可以连上,但我的意思是在菜单栏->添加新项->SQL Server数据库->确定,这时候会跳出一个错误框说我未安装SQL Server Express 2005,有哪位高手能告诉我这是为什么吗?我看到英文网站上SQL Server Express2005视频(mms://wm.microsoft.com/ms/msdn/vstudio/express/jan2007update/AbsoluteBeginnerSeries/VWD/07 VWD CS Lesson.wmv)里就这么点的。

     

    服务器名,连接方式,数据库名 和管理工具输得一样吗?

    2008年8月20日 6:43
    版主
  •  198710 写:
    貌似找到原因了。。在英文论坛上第一个人就基本给出结论了:.mdf没有默认文件关联,请教各位高手,是不是关联到C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\ssmsee.exe啊?

    我这个不是服务器名,连接方式是否一致的问题吧,可能是因为原先安装了Alcohol 120%和SQL Server对.mdf的关联有冲突吧,不知道SQL Server是否默认关联.mdf文件?

    2008年8月20日 7:02
  • 安装 SQL Server 以后应该是默认关联 .mdf 的

    2008年8月24日 16:54
    版主
  •  

    我和这位兄弟的问题是一模一样啊,sql05的08的2000的我全试过了都不行我装的vs2008,亟待解决啊!
    2008年8月27日 9:13
  •  duyj 写:

     

    我和这位兄弟的问题是一模一样啊,sql05的08的2000的我全试过了都不行我装的vs2008,亟待解决啊!

    看来这的确是个BUG了!

    2008年8月30日 5:27
  •  

    下载并安装Microsoft SQL Server 2008 管理对象,是VS 2008的问题

     

    http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=c6c3e9ef-ba29-4a43-8d69-a2bed18fe73c

    即可

    2008年9月7日 8:21
    版主
  • 有人说与版本有关, 我觉得是否并不重要。

    重要得是安装过程中选实例名时,一定要选择默认实例,不要用命名实例!

    因为我在用 Visual Studio 2008 安装盘修复方式安装 SQL Server 2005(我想这是原装版本应该最好)时,不能选实例名,自动的添加了一个命名实例,结果根本连接不上,Visual Studio 2008 只认默认实例!!在 SQL Server Management Studio Express 上选用命名实例的数据引擎可以连接使用

     

    用 SQL Server 2005 Express Edition SP2 发行日期是 2007/2/17   和SQL Server 2005 Express Edition SP1  发行日期是 2006/1/13 来安装,可以选择默认实例,在SQL Server Management Studio Express 上都可以连接使用;但是在Visual Studio 2008 上只能使用已有的数据库,想创建新数据库,特别是通过 项目——>添加新项——>选择 基于服务的数据库模板方式 创建新数据库,就会提示 “与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件,……”

     

    最后选用 具有高级服务的 SQL Server 2005 Express Edition SP2  在微软的下载网页上看发行日期是 2007/2/17  (版本高些总是好些吧),选择默认实例进行安装!然后在Visual Studio 2008 的工具菜单是选 选项——>数据库工具——>数据连接,将SQL Server 实例名称选项 置空,就一切OK了!

     

    不过要先为安装程序增加计数器注册表项值,否则安装过程中会提示出错,而中止安装!!

    2008年10月5日 8:38
  • VS2008 pro, Sql server express。我也遇到同样问题。问题已解决,方法如下:
    打开:Sql server 2005 外围应用配置器->功能的外围应用配置器 ->展开 "Database Engine" -> CLR 集成 -> 勾选 “启用 CLR 集成”。
    2009年5月1日 12:09
  • 感谢Ray Sham分享你的经验啊!
    欢迎常常来这里和大家交流啊!
    周雪峰
    2009年5月1日 12:25
    版主
  • 我按照上面说的方法都试了一遍还是不行!!我装的是vs2008 team +vs2008 sp1+ sql 2008,在asp.net mvc项目中添加数据库文件的时候老是提示与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件。不知道楼主的弄好了没,弄好了,麻烦给说下,也希望会弄的高手给说下!!谢谢了!!

    2010年1月23日 5:45
  • 我也遇到和大家一样的问题了 我的环境是: VS2008 Team System + sp1 SQL Server 2005 Development + sp3 先装的sql后装的vs 现在是在sql里建立数据库在vs里可以正常连接,但是我在开发asp.net网站时,在解决方案里添加sql数据库:添加-》新建项-》SQL Server数据库然后就会报错:“与SQL Server文件(*.mdf)的连接要求安装SQL Server2005才能正常工作,请确认是否安装了该组件,……” 试了一些方法,没有解决,实在是不知道是我操作不对还是哪里出了问题。 小弟在这里请教各位了
    北辰之神,苍青之君,广兮长空,以翱以翔
    2010年2月6日 1:37