↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

Wiki / SQLSTATE

22037 — non_unique_keys_in_a_json_object

JSON 对象中的键不唯一。

英文手册覆盖始于 PostgreSQL 8.1. 来源历史与运行验证各自保留独立版本边界。

当前阅读 PG 18·选择有来源记录的版本

aliases
未知
class name
Data Exception
condition name
non_unique_keys_in_a_json_object
lang
en
sqlstate
22037

版本定义 PG 18

22037

速览 {#at-a-glance}

锁定条件名表示 JSON 对象的键不唯一错误。对固定 PostgreSQL 18.6 的定向扫描没有解析出发出路径。

含义 {#meaning}

定义将该条件命名为 non_unique_keys_in_a_json_object,但 PostgreSQL 18.6 的定向源码审阅没有解析出原生 22037 发出方。因此本页只记录条件身份和诊断边界,不指定 SQL/JSON 构造器、解析器、首要报文、DETAIL 或 HINT。

诊断 {#diagnosis}

如果部署报告 22037,应连同完整首要报文、DETAIL、HINT、调用的 SQL/JSON 操作和版本一起保留,再据此判断是哪种对象及重复键策略发出了该条件。不要在没有实际诊断的情况下把它替换成相关的 22030 重复键构造路径。

处理 {#response}

依据实际发出方的重复键策略处理:按该操作的文档规则规范化或拒绝重复键。如果 ERROR 发生在显式事务中,应先 ROLLBACK 或回滚到既有保存点再重试;自动提交可重试修正后的动作。

版本 {#versions}

锁定目录从 12.0 起记录该条件;本页仅固定 PostgreSQL 18.6 定义行,未声称有原生发出路径或自然运行观察。

相关 {#related}

22030、22032、2203A

来源 {#sources}

固定定义行见 errcodes.txt#L222。定向源码审阅没有解析出原生 22037 发出路径;结构化证据记录明确保留这一未知范围,本页未运行自然案例。

比较版本

SQLSTATE 证据与已记录的运行版本

claims · identity
{
  "claim_id": "identity",
  "limits": "",
  "method": "Read fixed definition.",
  "position": 0,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6"
  ],
  "statement": "22037 is non_unique_keys_in_a_json_object in SQLSTATE Class 22."
}
claims · bounded-source-scope
{
  "claim_id": "bounded-source-scope",
  "limits": "Bounded scan does not prove no extension or historical path exists.",
  "method": "Retain definition without inventing emitter.",
  "position": 1,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6"
  ],
  "statement": "No fixed PostgreSQL 18.6 emitting path was resolved for 22037 in the bounded scan."
}
claims · history
{
  "claim_id": "history",
  "limits": "",
  "method": "Use catalogue boundary.",
  "position": 2,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6"
  ],
  "statement": "The locked catalogue records 22037 from 12.0 without proving exact implementation introduction."
}
sources · src.errcodes.18.6
{
  "commit": "724edf9bde9d356724ad384a2e196edc3c9f80f7",
  "docs_url": "",
  "kind": "upstream_source",
  "location": "",
  "path": "src/backend/utils/errcodes.txt",
  "position": 0,
  "sha256": "6e8de346643ba84aa3c9c6a73360acfc7b2dfb89162c06c08ce9bf5bcd5bbcba",
  "source_id": "src.errcodes.18.6",
  "tag": "REL_18_6",
  "url": "https://github.com/postgres/postgres/blob/724edf9bde9d356724ad384a2e196edc3c9f80f7/src/backend/utils/errcodes.txt#L222"
}

来源引用

完整定义与证据 JSON

定义来源

center · PostgreSQL 18 · english-manuals:f4356d43eab63a5d52c4efc26d9955a53f9362c2cb7a7980af5bff110c7c5c74

正文语言: zh-Hans · english-manuals:f4356d43eab63a5d52c4efc26d9955a53f9362c2cb7a7980af5bff110c7c5c74