选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档 / SQL 状态码 / Class 10 XQuery错误

10608 invalid_argument_for_xquery

ERROR 源码确认 参考 未实测

类别
Class 10 XQuery错误
严重等级
ERROR
条件名
invalid_argument_for_xquery
宏名称
ERRCODE_INVALID_ARGUMENT_FOR_XQUERY
启用版本
18
状态
活跃

版本覆盖

  1. 18
  2. 17
  3. 16
  4. 15
  5. 14
  1. 13
  2. 12
  3. 11
  4. 10
  1. 19 beta
  2. 20 dev

速览

SQLSTATE 10608 是 XQuery 类别中表示参数无效的 ERROR 条件。PostgreSQL 18.6 已确认后端 XML 路径会因 XPath 表达式为空、行路径过滤器为空或列路径过滤器为空而报告它。contrib/xml2 源码也引用该宏,但引用本身不能证明存在另一条报告消息。

含义

固定后端调用在 src/backend/utils/adt/xml.c 中分别报告 empty XPath expressionrow path filter must not be empty stringcolumn path filter must not be empty string。这些是 XML/XPath 处理中的参数校验失败。核心报告并不意味着所有 XPath/XSLT 或扩展参数错误都使用 10608。

消息

固定消息是 empty XPath expressionrow path filter must not be empty stringcolumn path filter must not be empty string

报文模板

源码里的格式串,不是某一次运行的输出。%s 之类是占位符,实际报文会填入对象名与取值。适用范围一栏是核验时留下的原始英文记录,未经翻译。

主消息 empty XPath expression

来源:src/backend/utils/adt/xml.c @ REL_18_6

主消息 row path filter must not be empty string

来源:src/backend/utils/adt/xml.c @ REL_18_6

主消息 column path filter must not be empty string

来源:src/backend/utils/adt/xml.c @ REL_18_6

诊断

确认哪个 XML 操作提供了参数,并判断为空的是 XPath 表达式、行路径过滤器还是列路径过滤器。保留准确消息和输入形状;对于 xml2 或其他扩展,应单独检查扩展调用路径,因为宏引用不是报告调用组。比较行为时记录服务器版本:锁定目录将 10608 的已知下界置于 PostgreSQL 18.0。

处理

按照 XML 函数要求提供非空表达式或过滤器,先验证修正后的输入,再重复语句。若操作由扩展负责,应遵循扩展的参数规则。这是输入修复;不改变空参数而重试无法解决已确认的路径。

版本

锁定目录将该条件的已知下界记为 PostgreSQL 18.0。事实块列出已发布快照;源码路径状态仅限于下方固定的 PostgreSQL 18.6 资料。

来源

证据

断言

每条断言都写明了是怎么核实的,以及它不覆盖什么。这一层是核验时留下的原始英文记录,照原样呈现,未经翻译。

  • 10608 is invalid_argument_for_xquery in SQLSTATE Class 10.

    核实方式Read the fixed errcodes definition row, severity, and macro.

    来源src/backend/utils/errcodes.txt

  • The fixed PostgreSQL 18.6 source contains the report path and message context described on the page.

    核实方式Read the complete source context around the resolved report group.

    不覆盖This is source confirmation, not a runtime observation in this batch.

    来源src/backend/utils/adt/xml.c · contrib/xml2/xpath.c · contrib/xml2/xslt_proc.c

  • The locked release definitions establish catalogue presence from the known 18.0 boundary; they do not establish a precise introducing release or runtime use.

    核实方式Compare canonical release-definition facts with the available history boundary.

    不覆盖Definition presence is not an emitting-path observation.

    来源src/backend/utils/errcodes.txt

同类 SQL 状态码

状态码 条件名 宏名称 严重等级 版本
Class 10 XQuery错误 XQuery Error 1 个
10608 invalid_argument_for_xquery ERRCODE_INVALID_ARGUMENT_FOR_XQUERY ERROR 18
XQuery/XPath 表达式参数无效,如路径为空。 活跃