错误26无法连接到数据库

时间:2012-10-22 17:19:13

标签: c# database linq

我拿了一个由其他人制作的旧软件,需要连接到扩展名为.mdf的数据库。

但是当我运行该软件时,我有一个error 26。我显然已经检查了Google,看来主要的问题是防火墙。但如果我禁用它,问题就不会消失。

以下是连接数据库的代码:

DataClasses1DataContext db = new DataClasses1DataContext(Environment.CurrentDirectory + "\\bddgestionvin.mdf");

我注意到,当我尝试将数据库与datacontext类连接时,它也会失败并使用相同的error 26。 (见下面附带的截图)

此类使用的字符串连接是:

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\bddgestionvin.mdf;Integrated Security=True;Connect `Timeout=30;User Instance=True`

我知道我有点模糊,但我从来没有做过那种事情(连接到.mdf数据库)并且代码不是我的,请随意询问进一步的解释/代码。欢迎任何帮助!

P.S错误信息是

  

SqlException未处理与网络相关或特定于实例   建立与SQL Server的连接时发生错误。该   服务器未找到或无法访问。验证该实例   名称是正确的,并且SQL Server配置为允许远程   连接。 (提供者:SQL网络接口,错误:26 - 错误   找到指定的服务器/实例)

enter image description here

(对不起法国软件)

1 个答案:

答案 0 :(得分:1)

您好,我不知道您可能会看到这些步骤。确保这些步骤应该通过。

  

我们收到此错误消息的原因是客户端堆栈可以   不从SQL浏览器接收SSRP响应UDP数据包。这很容易   隔离问题。以下是步骤:

     

1)确保您的服务器名称正确,例如名称上没有拼写错误。

     

2)确保你的实例名称是正确的,实际上是这样的   目标计算机上的实例。 [更新:某些应用程序转换   \ 至 。如果您不确定您的申请,请尝试两者   连接字符串中的Server \ Instance和Server \ Instance]

     

3)确保服务器机器可以访问,例如DNS可以解析   正确地说,您可以ping服务器(并非总是如此)。

     

4)确保SQL Browser服务正在服务器上运行。

     

5)如果服务器上启用了防火墙,则需要放置   sqlbrowser.exe和/或UDP端口1434异常。

您可以从here

了解更多信息

您还可以尝试PortQry并验证您的防火墙不会阻止SQL Browser UDP数据包

建立与SQL Server的连接时发生与网络相关或特定于实例的错误。 Failed to establish a connection with SQL Server.

找不到服务器或无法访问服务器。   May be server is stopped, you don't have permission to access the server, or the instance name is not correct .

验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。

Please goto SSMS and try connecting the server. Verify the SQL Server is running and your account is configured to access the service.

(提供程序:SQL网络接口,错误:26 - 找到指定的服务器/实例时出错)

谢谢