无法连接到SQL Server本地

问题描述:

我收到的时候我尝试连接到Web服务无法连接到SQL Server本地

System.Data.SqlClient.SqlException以下异常:试图附加自动命名的数据库文件DatabaseName.mdb失败。具有相同名称的数据库存在,或指定的文件无法打开,或位于UNC共享上。

我使用的连接字符串是:

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

我想在本地系统*问SQL Server。

我已经经历了很多文章,并遵循了所有不同的方法。但我没有解决。

任何人都可以帮我吗?

+0

'.mdb'是MS ** **访问 - ** **不SQL Server的.... – 2013-05-05 18:46:53

+0

我有一个MS Access数据库。我如何使它成为一个.mdf数据库以访问SQL服务器? – Abhishek 2013-05-06 00:41:10

+0

创建您的SQL Server数据库(例如,Management Studio),然后使用例如SQL Server集成服务(“数据导入”向导)将Access数据导入到SQL Server – 2013-05-06 04:19:24

以前的问题是编辑:

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

更新 后,您可以随时FULLPATH尝试是的,你需要OLEDB电话不是SQL确保那不是的情况下与你的.cs代码

纠正你的问题:

我我试图访问SQL服务器上的本地系统

: 我没有看到你如何能做到这一点与.mdb文件;即使这不是确保SQL服务在您的系统中正常运行,请转到 - >开始按钮 - >程序文件 - > Microsoft SQL Server yourversion->配置管理器 - >检查正在运行的服务。

在你Solution Explorer,点击"Show All Files".然后去你App_Data文件夹,删除WS_assignment.mdb,然后运行你的应用程序。

而且,你的供应商是错误的

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

其次,你的数据库名称应.mdf.sdf结束的SQL Server。

所以,您的连接字符串将成为:

<connectionStrings> 
    <add name="ConnectionStringName" 
    connectionString="Data Source=|DataDirectory|WS_Assignment.sdf" 
    providerName="System.Data.SqlClient"/> 
    </connectionStrings> 
+0

但即便如此:'.mdb'是MS ** Access ** - * *不是** SQL Server .... – 2013-05-05 18:49:19

+0

另外:对于'.sdf'(= SQL Server Compact),您将需要使用不同的'providerName = ....'值!你给的只是* full * SQL Server版本(对于SQL Server CE而言不是**) – 2013-05-05 19:50:49

选中此项。
http://msdn.microsoft.com/en-IN/library/5ybdbtte%28v=vs.71%29.aspx
使用Access需要System.Data.OleDb