出错:在建立到SQL Server的连接时出现了与网络或实例相关的错误。

3
我是一名新手开发者。我在试图从我的计算机连接到服务器时遇到了问题。

在建立与SQL Server的连接时出现了与网络相关或特定于实例的错误。
服务器未找到或无法访问。请验证实例名称是否正确,并确认SQL Server已配置为允许远程连接。(提供程序: SQL Network Interfaces,错误: 26 - 找不到服务器/指定的实例)

我已经搜索了解决方法,但没有一个适用于我。你能帮帮我吗?

这是我的连接字符串:
string constring = @"Data Source=137.xx.xx.xxx\\SQLEXPRESS;Initial Catalog=EDI_HR;User ID=sa;Password=1234;";

并且。
string constring = @"Data Source=CISXXXXXX\SQLEXPRESS;Initial Catalog=EDI_HR;User ID=sa;Password=1234;";

以下是一些对我不起作用的解决方案的参考:


你为什么有两行连接字符串? - Cookie Monster
6个回答

4

这是一个非常通用的错误,你可能需要尝试很多方法才能解决它。

  1. 检查应用程序机器与数据库机器之间的连接。在命令行中输入“ping 137.xx.xx.xxx”,“ping CISXXXXXX”,“telnet 137.xx.xx.xxx 1433”,“telnet CISXXXXXX 1433”等命令。如果没有连接,则有两种可能:

    • IP 路由未配置;
    • SQL Server 端口在任一侧或中间的防火墙上关闭。也许那些地址甚至是路由器(不是实际的数据库机器),且未设置端口 1433 的 NAT。
  2. 前往远程计算机并尝试在本地连接到名为 SQLEXPRESS 的 SQL Server 实例(使用 SSMS)。如果您无法连接,则可能未启动该实例。或者可能没有命名实例,您需要连接到默认实例(即不指定 SQLEXPRESS

  3. 检查 SQL Server 实例是否通过 TCP/IP 允许远程连接。我想最简单的方法是前往远程计算机并打开 SQL Server 配置管理器。

  4. 检查连接字符串中的符号。我看到您的其中一个连接字符串有双反斜杠,另一个则有单反斜杠。这是可疑的。如果您从 @ 开始 C# 字符串文字,则应使用单反斜杠。

还有其他可能性,但我想你已经明白了。


3

试试这个:

string constring = @"Data Source=137.xx.xx.xxx\\SQLEXPRESS;Initial Catalog=EDI_HR;Integrated Security =True";

0

你不必使用.\SQLEXPRESS,你只需要添加你的 SQL Express 名称就行了,这对我有效。

<add name="BlogDbContext" connectionString="data source=your name here; initial catalog=CodeFirstDemo; integrated security=True" providerName="System.Data.SqlClient"/>

0

在与远程服务器建立连接时, 尝试在服务器末尾使用'\SQLEXPRESS'。 例如:"ABCD_server_name\SQLEXPRESS"


0
如果你遇到了以下错误: SSMS中的连接错误 那么有两种方法。
1. 确保在创建连接时,SSMS中的实例名称是正确的。你在SQL Server和SSMS中的实例名称必须相同。 服务器名称:(你的计算机名称)(实例名称)。 打开“运行”并输入命令“services.msc”。然后搜索 SQL Server(实例名称)。将该实例名称用于“服务器名称”。
[如果这个方法不起作用]
2. 在安装SQL Server时,如果选择了“基本”选项,则从“服务器名称”中删除实例名称。只使用你的系统名称作为服务器名称。

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接