SQL异常代码
我一直在用C#捕获SQL异常代码,使用: 它在文本文件中为我提供了以下数字。我怎么知道它是什么意思 错误代码:-2146232060SQL异常代码,sql,sql-server,sql-server-2012,Sql,Sql Server,Sql Server 2012,我一直在用C#捕获SQL异常代码,使用: 它在文本文件中为我提供了以下数字。我怎么知道它是什么意思 错误代码:-2146232060 我正在使用SQL 2012请考虑使用SqlException.Number属性,如下所示: 此外,如果要处理一个特定的错误代码并执行以下操作,则在SQL Server中查询错误消息时,这将有助于更好地理解错误消息: SELECT * FROM sysmessages 如果查看上述查询中的错误:104,然后: 示例:如果sql中的Union和Order By出现错
我正在使用SQL 2012请考虑使用SqlException.Number属性,如下所示: 此外,如果要处理一个特定的错误代码并执行以下操作,则在SQL Server中查询错误消息时,这将有助于更好地理解错误消息:
SELECT * FROM sysmessages
如果查看上述查询中的错误:104,然后:
示例:如果sql中的Union和Order By出现错误:
catch (SqlException e)
{
switch (e.Number)
{
case 104:
// Do something.
break;
default:
throw;
}
}
除了错误代码之外,还应该考虑记录异常消息。我已经这样做了,但是只有SQL异常出现在日志文件中。不幸的是,您正在登录错误的东西。
Number
属性会更有用,因为它直接映射到SQL Server错误号,可以很容易地进行查找。您能给出一些原因吗?这是一个只有链接的答案。@Jeff:更新的答案。很好。非常感谢。
catch (SqlException e)
{
switch (e.Number)
{
case 104:
// Do something.
break;
default:
throw;
}
}