44.5. 错误和通知消息字段 #
本节描述了ErrorResponse和NoticeResponse消息中可能出现的字段。每个字段类型都有一个单字节的标识符。请注意,任何给定的字段类型在消息中最多只能出现一次。
S严重性:字段内容为
ERROR、FATAL或PANIC(在错误消息中),或WARNING、NOTICE、DEBUG、INFO或LOG(在通知消息中),或这些内容的本地化翻译。始终存在。C代码:错误的 SQLSTATE 代码(见附录 A)。不可本地化。始终存在。
M消息:主要的可读错误消息。应准确而简洁(通常为一行)。始终存在。
D详细信息:可选的次要错误消息,提供有关该问题的更多细节。可能占多行。
H提示:可选的建议,说明如何处理该问题。它与详细信息的区别在于,它提供建议(可能并不合适),而非确凿事实。可能占多行。
P位置:字段值是一个十进制ASCII整数,表示错误光标位置,作为原始查询字符串的索引。第一个字符的索引为1,位置以字符而非字节计量。
WWhere:错误发生的上下文的指示。目前这包括活动 PL 函数的调用栈回溯。追踪每行一个条目,最近的在前。
F文件:报告错误的源代码位置所在的文件名。
L行号:报告错误的源代码位置所在的行号。
R例程:报告错误的源代码例程的名称。
客户端负责按自身需要格式化显示的信息;尤其应根据需要将长行断开。错误消息字段中的换行符应视为段落分隔符,而非行分隔符。