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

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

Wiki / SQLSTATE

2200G — most_specific_type_mismatch

无法确定值的最具体类型,类型不匹配。

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

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

aliases
未知
class name
Data Exception
condition name
most_specific_type_mismatch
lang
en
sqlstate
2200G

版本定义 PG 18

2200G

速览 {#at-a-glance}

该条件表示类型解析时无法确定最具体类型。有限的固定扫描没有解析出 PostgreSQL 18.6 的具体发出路径,因此本页保持条件性说明,不把一般转换或运算符错误冒充为 2200G。

含义 {#meaning}

本条件涉及类型选择:操作无法确定最具体的公共类型。

诊断 {#diagnosis}

结合完整报文以及其中涉及的表达式或例程签名定位。检查报错位置的 unknown 字面量、多态参数、重载运算符和显式类型转换。若服务器实际报告 42804 或 42846,应按实际代码处理;“类型不匹配”本身不能证明是 2200G。

处理 {#response}

确认服务器实际 SQLSTATE 后,通过明确预期类型或修正例程签名解决报错表达式的类型解析。

版本 {#versions}

锁定目录从 7.4 起记录该条件;固定源码覆盖 PostgreSQL 18.6。

相关 {#related}

22003、42804

来源 {#sources}

固定目录定义已核对;本次有限扫描没有解析出可公开绑定的原生发出函数。 结构化证据记录保留定义、消息和范围边界。 目录定义已确认,但本次扫描没有解析出发出函数和报文模板。包装器或扩展可能拥有具体用法,调查时应保留实际上下文。

比较版本

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

claims · identity
{
  "claim_id": "identity",
  "limits": "",
  "method": "Read fixed definition.",
  "position": 0,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6"
  ],
  "statement": "2200G is most_specific_type_mismatch in SQLSTATE Class 22."
}
claims · bounded-scan
{
  "claim_id": "bounded-scan",
  "limits": "A bounded scan does not prove that no extension, wrapper, or historical path exists.",
  "method": "Search fixed call records for the macro.",
  "position": 1,
  "runtime": [],
  "sources": [
    "src.calls.REL_18_6"
  ],
  "statement": "No fixed PostgreSQL 18.6 emitting path was resolved for 2200G in the bounded source scan."
}
claims · meaning-boundary
{
  "claim_id": "meaning-boundary",
  "limits": "No fixed primary/detail template was confirmed.",
  "method": "Keep code identity separate from neighboring type errors.",
  "position": 2,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6",
    "src.calls.REL_18_6"
  ],
  "statement": "The condition name describes failure to choose a most-specific common type; unknown literals, polymorphic arguments, overloaded operators, and routine signatures are investigation targets, not evidence that a generic 42804/42846 is 2200G."
}
claims · history
{
  "claim_id": "history",
  "limits": "",
  "method": "Use catalogue boundary.",
  "position": 3,
  "runtime": [],
  "sources": [
    "src.errcodes.18.6"
  ],
  "statement": "The locked catalogue records 2200G from 7.4 without proving an exact implementation introduction date."
}
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#L194"
}
sources · src.calls.REL_18_6
{
  "commit": "",
  "docs_url": "",
  "kind": "local_artifact",
  "location": "",
  "path": "raw/calls/REL_18_6.jsonl",
  "position": 1,
  "sha256": "9ee8a0e81d8f0825c5c1ae45583439859a26e602bdd4ce2f2a62aa278867ccbf",
  "source_id": "src.calls.REL_18_6",
  "tag": "",
  "url": ""
}

来源引用

完整定义与证据 JSON

定义来源

center · PostgreSQL 18 · english-manuals:acb3fef3a16b614e46feabd366f0b2438932a416e73b2c6d628666d15a5e4da5

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