0

尝试连接到 Web 服务时出现以下异常

System.Data.SqlClient.SqlException:尝试为文件 DatabaseName.mdb 附加自动命名的数据库失败。存在同名数据库,或无法打开指定文件,或位于 UNC 共享上。

我正在使用的连接字符串是:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|WS_Assignment.mdb;uid=Admin;pwd=" 
providerName="System.Data.OleDb"

我正在尝试访问本地系统上的 SQL Server。

我浏览了很多文章并遵循了所有不同的方法。但我没有解决办法。

谁能帮我吗?

4

3 回答 3

0

在您的Solution Explorer中,单击"Show All Files".然后转到您的App_Data文件夹并删除WS_assignment.mdb然后运行您的应用程序。

另外,您的提供商是错误的

providerName="System.Data.SqlClient" is the right one.

其次,您的数据库名称应以 SQL Server.mdf.sdfSQL Server 结尾。

因此,您的连接字符串将变为:

 <connectionStrings>
    <add name="ConnectionStringName"
     connectionString="Data Source=|DataDirectory|WS_Assignment.sdf"
     providerName="System.Data.SqlClient"/>
  </connectionStrings> 
于 2013-05-05T18:49:02.307 回答
0

编辑问题之前:

您是在 Web 服务器上部署,而不是在本地主机上部署。如果是这种情况,您需要在服务器数据库中发布 sql 脚本,因为服务器不允许在您的部署中使用 attachDB 文件,如果是这种情况,那么您的问题就解决了。

更新后 ,您始终可以尝试使用完整路径,是的,您需要 OLEDB 调用而不是 sql 确保您的 .cs 代码不是这种情况

更正您的问题:

我正在尝试访问本地系统上的 SQL 服务器

:我不明白你怎么能用 .mdb 文件做到这一点;即使不是这种情况,请确保 sql 服务在您的系统中正常运行转到-> 开始按钮-> 程序文件-> microsoft sql server yourversion-> 配置管理器-> 检查正在运行的服务。

于 2013-05-05T18:49:10.977 回答
0

检查这个。
http://msdn.microsoft.com/en-IN/library/5ybdbtte%28v=vs.71%29.aspx
使用 Access 需要System.Data.OleDb

于 2013-05-05T19:29:28.113 回答