pg_enum #
pg_enum 目录包含展示每个枚举类型的值和标签的
条目。给定枚举值的内部表示实际上是它在
pg_enum 中关联行的 OID。
Table 52.20. \1 字段列说明
pg_enum 行的 OID 遵循一条特殊的规则:
偶数 OID 保证按照与其枚举类型排序顺序相同的方式排序。
也就是说,如果两个偶数 OID 属于同一个枚举类型,
较小的 OID 必须具有较小的
enumsortorder 值。
奇数 OID 值则不必与排序顺序有任何关系。
这条规则使枚举比较例程在许多常见情况下可以避免目录查找。
创建和更改枚举类型的例程会尽可能为枚举值分配偶数 OID。
枚举类型被创建时,其成员会被分配排序位置
1..n。但后来增加的成员可能被赋予
enumsortorder 的负值或分数值。
对这些值的唯一要求是:它们在每个枚举类型内必须正确排序且唯一。