c# - 是否有异常错误类值列表及其含义?具体是sqlexception

标签 c# .net sql-server exception

我正在使用数据库并捕获异常以检查各种条件。我不能简单地捕获 sqlException,因为它可能意味着很多事情,并且通常使用

catch (SqlException e)
        {
            if (e.Errors[0].Class == 14)
            {
                return 0;
            }
            else ........

检查具体情况。在此示例中,第 14 类(至少据我所知)表示重复条目。不同的类意味着找不到服务器、拒绝连接或登录错误等。有谁知道在哪里可以找到这些错误类的列表?谷歌搜索这很困难,因为任何带有“类”的东西都会变得显而易见。

最佳答案

严重性为 14 可能意味着很多事情:

SELECT message_id, [text]
FROM sys.messages
WHERE language_id = 1033
AND severity = 14;

查看完整列表:

SELECT message_id, severity, [text]
FROM sys.messages
WHERE language_id = 1033
AND severity > 0
ORDER BY severity;

我怀疑您对 message_id 列比 severity 列更感兴趣,因为它更具体一些。

关于c# - 是否有异常错误类值列表及其含义?具体是sqlexception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9405648/

相关文章:

sql-server - 使用 SQL 高效查询记录的最新版本

c# - 内部安全检查,如何做到100%的代码覆盖率?

c# - 如何注册ServiceBusClient进行依赖注入(inject)?

c# - 在 ContextMenuStrip 上捕获 MouseHover 事件

c# - 使用正则表达式从此字符串获取字符串模式

sql-server - Azure Synapse 无服务器 SQL 池无法连接但可以连接到专用 SQL 池吗?

c# - WebBrowser 和 javascript window.close()

c# - ComboBoxItem MouseEnter 事件未触发

c# - 使用 ProtocolType.IP 和 ProtocolType.Tcp 有什么区别

sql - 优化更新查询