BOL声明SQL Server 10级消息是“返回状态信息或报告不严重错误的信息性消息。”
然而,这些错误似乎很严重而且不具备信息性:
The system cannot self repair this error.
Process ID %d has raised user error %d, severity %d. SQL Server is terminating this process.
Arithmetic overflow occurred.
Division by zero occurred.
这些仅仅是一些看起来不仅仅是信息的东西。它们是使用以下查询获取的:
SELECT
message_id,
language_id,
severity,
is_event_logged,
text
FROM sys.messages
WHERE
language_id = 1033
AND
severity = 10
为什么许多SQL Server严重性10错误实际上看起来很严重?
答案 0 :(得分:3)
sys.messages中的严重性不是它们引发的实际严重程度。
答案 1 :(得分:1)
在您的示例中,严重性可能是主观的,
- 3606 - 发生算术溢出
- 3607 - 分零发生。
嗯,这些对你来说可能没什么问题,但对服务器来说,这可能会对你应用程序的业务逻辑产生严重影响。
尽管如此,我确实同意一些/很多消息(严重性除外)不清楚/不明确/不明确。