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

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

已结束支持的版本: 7.2 / 7.1
历史版本。 PostgreSQL 7.1 已结束支持。 请参阅 当前版本手册.

1.2. 列 #

一个列既可以是给定表的一个用户定义列,也可以是下列系统定义列之一:

oid

一行的唯一标识符(对象 ID)。这是由 Postgres 自动为所有行添加的一个序列号。OID 不会被重用,并且是 32 位的量。

tableoid

包含该行的表的 OID。对于从继承层次中选择的查询来说,这个属性特别有用,因为没有它就很难分辨一行来自哪个具体的表。tableoid 可以与 pg_class 的 OID 属性连接来获得表名。

xmin

插入该元组的事务的标识(事务 ID)。(注意:元组是一行的单个状态;对一行的每次 UPDATE 都会为同一逻辑行创建一个新元组。)

cmin

插入事务内部的命令标识符(从零开始)。

xmax

删除事务的标识(事务 ID),对于未删除的元组为零。实践中,在一个可见元组中它从不为非零。

cmax

删除事务内部的命令标识符,或为零。同样,它在一个可见元组中从不为非零。

ctid

该元组在其表中的元组 ID。这是一对(块号,块内元组索引),标识该元组的物理位置。注意,虽然 ctid 可以用来非常快速地定位元组,但一行的 ctid 在每次被更新或被 VACUUM 移动时都会改变。因此 ctid 作为长期行标识符是没有用的。应该使用 OID,或者更好的是用户定义的序列号来标识逻辑行。

关于系统属性的更多信息请参阅 Stonebraker, Hanson, Hong, 1987 。事务和命令标识符都是 32 位的量。

报告文档问题

阅读 上游文档. 反馈更正前请先核对 当前版本手册.