SQLClient 哪些错误号与 SQL Server 连接错误有关,所以我可以重试

Posted

技术标签:

【中文标题】SQLClient 哪些错误号与 SQL Server 连接错误有关,所以我可以重试【英文标题】:SQLClient What error numbers are related to SQL Server Connection errors so I can retry 【发布时间】:2014-11-23 11:08:41 【问题描述】:

我在使用 SQLClient 时收到以下错误,错误编号是否比错误编号多:-1、53、2?

错误号:-1,级别:20,状态:0,行:0;消息:一个 建立时发生与网络相关或特定于实例的错误 到 SQL Server 的连接。未找到或未找到服务器 无障碍。验证实例名称是否正确以及 SQL 服务器配置为允许远程连接。 (提供者:SQL 网络接口,错误:26 - 定位服务器/实例时出错 指定)

错误号:53,级别:20,状态:0,行:0;消息:一个 建立时发生与网络相关或特定于实例的错误 到 SQL Server 的连接。未找到或未找到服务器 无障碍。验证实例名称是否正确以及 SQL 服务器配置为允许远程连接。 (提供者:命名 Pipes Provider,错误:40 - 无法打开与 SQL Server 的连接)

错误编号:2,级别:20,状态:0,行:0;消息:一个 建立时发生与网络相关或特定于实例的错误 到 SQL Server 的连接。未找到或未找到服务器 无障碍。验证实例名称是否正确以及 SQL 服务器配置为允许远程连接。 (提供者:命名 Pipes Provider,错误:40 - 无法打开与 SQL Server 的连接)

【问题讨论】:

错误详情请尝试以下链接technet.microsoft.com/en-us/library/cc645611(v=sql.105).aspx错误码由db server返回给sql slient。 感谢 Gaurav Singh Jantwal,这就是我想要的。现在我如何标记这些问题已回答?是因为您的问题显示为评论而不是答案? 【参考方案1】:

我用于一般分类的规则:

数字 = -1 或类/级别/严重性 = 20:“连接错误”

Number = -2:“命令超时错误”

我相信负值完全来自客户端库(即网络连接问题);这意味着像 2 和 53 这样的“重复”数字会从服务器本身返回以进行半连接。

其他错误(例如死锁/1205)可以更容易地通过数字来定义。


正如其他答案所包含的,这里也是各种参考资料的链接:

https://msdn.microsoft.com/en-us/library/cc645611.aspx https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlerror.number.aspx

【讨论】:

【参考方案2】:

请尝试以下链接了解错误详情

http://technet.microsoft.com/en-us/library/cc645611(v=sql.105).aspx

错误码由db server返回给sql client。

【讨论】:

我无法想象为什么这个答案被否决了。这基本上是正确的,除非人们愿意解释他们的反对意见。我赞成它。

以上是关于SQLClient 哪些错误号与 SQL Server 连接错误有关,所以我可以重试的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server2008 错误源:.net SqlClient data provider的解决方法

MyBatis mapper.xml中SQL处理小于号与大于号 和小于等于号

MyBatis mapper.xml中SQL处理小于号与大于号

System.Data.SqlClient.SqlException - 无法通过Management Studio连接到SQL Server

Azure Functions 运行时 2 - 使用 SqlClient 的 SQL 连接

在SQL SERVER 2005中还原数据库时出现错误:system.data.sqlclient.sqlerror 媒体集有 2 个媒体簇 但只提供了 1 个。必须提供所有成员。 (microsof