跳转到主要内容
← 目录图谱 / pg_cast

SYSTEM CATALOG · 系统目录

pg_cast

The catalog pg_cast stores data type conversion paths, both built-in and user-defined. It should be noted that pg_cast does not represent every type conversion that the system knows how to perform; only those that cannot be deduced from some generic rule. For example, casting between a domain and its base type is not explicitly represented in pg_cast. Another important exception is that “automatic I/O conversion casts”, those performed using a data type's own I/O functions to convert to or from text or other string types, are not explicitly represented in pg_cast.

首次收录 PG 9.0最近收录 PG 19当前字段 6

已与 PostgreSQL 18.6 实例逐字段核对 · 原始实测记录 ↗

字段结构 PostgreSQL 18

pg_cast
字段 / COLUMN类型 / TYPE说明 / DESCRIPTION
oid oidNOT NULL Row identifier
castsource oidNOT NULL OID of the source data type引用:pg_type.oid
casttarget oidNOT NULL OID of the target data type引用:pg_type.oid
castfunc oidNOT NULL The OID of the function to use to perform this cast. Zero is stored if the cast method doesn't require a function.引用:pg_proc.oid
castcontext "char"NOT NULL文档原写法:char Indicates what contexts the cast can be invoked in. e means only as an explicit cast (using CAST or :: syntax). a means implicitly in assignment to a target column, as well as explicitly. i means implicitly in expressions, as well as the other cases.
castmethod "char"NOT NULL文档原写法:char Indicates how the cast is performed. f means that the function specified in the castfunc field is used. i means that the input/output functions are used. b means that the types are binary-coercible, thus no conversion is required.

标记“隐式列”的字段不包含在 SELECT * 中;部分早期统计视图由同版本源码补全,额外来源会显示在字段说明中。

通用系统列 6

PostgreSQL 提供的系统属性,通常不在 SELECT * 中展开。单独保留,不与普通字段混算。

字段类型attnum
tableoidoid-6
cmaxcid-5
xmaxxid-4
cmincid-3
xminxid-2
ctidtid-1

字段演化矩阵

悬停查看字段类型
存在新增 / 类型或属性变化移除
字段 / COLUMN9.09.19.29.39.49.59.610111213141516171819
oid
castsource
casttarget
castfunc
castcontext
castmethod

9.0 是收录基线;基线中已存在的字段不标记为新增。矩阵按字段名称对齐,重命名显示为旧字段移除与新字段新增。

演化时间线

相邻大版本的变化

PostgreSQL 12 ← 11

~ oid: 隐式列 → 常规列1 处字段说明更新

PostgreSQL 10 ← 9.6

目录说明更新

PostgreSQL 9.3 ← 9.2

1 处字段说明更新

PostgreSQL 9.2 ← 9.1

目录说明更新

比较任意两个版本

选择两个版本,查看字段的新增、移除与类型变化。交互比较需要 JavaScript;演化时间线可直接阅读。