PostgreSQL 8.2.3 中文文档
后退快退章43. 系统表快进前进

43.12. pg_class

pg_class 表记载表和几乎所有有字段或者是那些类似表的东西。包括索引(不过还要参阅 pg_index)、序列、视图、复合类型和一些特殊关系类型;参阅 relkind 。在下面,当指所有这些对象的时候说"关系"(relations)。不是所有字段对所有关系类型都有意义。

表43-12. pg_class 字段

名字类型引用描述
relnamename 表、索引、视图等的名字。
relnamespaceoidpg_namespace.oid包含这个关系的名字空间(模式)的 OID
reltypeoidpg_type.oid对应这个表的行类型的数据类型(索引为零,它们没有 pg_type 记录)。
relowneroidpg_authid.oid关系所有者
relamoidpg_am.oid如果行是索引,那么就是所用的访问模式(B-tree, hash 等等)
relfilenodeoid 这个关系在磁盘上的文件的名字,如果没有则为 0
reltablespaceoidpg_tablespace.oid这个关系存储所在的表空间。如果为零,则意味着使用该数据库的缺省表空间。如果关系在磁盘上没有文件,则这个字段没有什么意义。
relpagesint4 以页(大小为 BLCKSZ)的此表在磁盘上的形式的大小。它只是规划器用的一个近似值,是由 VACUUM, ANALYZE 和几个 DDL 命令,比如 CREATE INDEX 更新。
reltuplesfloat4 表中行的数目。只是规划器使用的一个估计值,由 VACUUM, ANALYZE 和几个 DDL 命令,比如 CREATE INDEX 更新。
reltoastrelidoidpg_class.oid与此表关联的 TOAST 表的 OID ,如果没有为 0 。TOAST 表在一个从属表里"离线"存储大字段。
reltoastidxidoidpg_class.oid对于 TOAST 表是它的索引的 OID ,如果不是 TOAST 表则为 0
relhasindexbool 如果它是一个表而且至少有(或者最近有过)一个索引,则为真。它是由 CREATE INDEX 设置的,但 DROP INDEX 不会立即将它清除。如果 VACUUM 现一个表没有索引,那么它将清理 relhasindex
relissharedbool 如果该表在整个集群中由所有数据库共享则为真。只有某些系统表(比如 pg_database)是共享的。
relkindchar r = 普通表, i = 索引, S = 序列, v = 视图, c = 复合类型, t = TOAST 表
relnattsint2 关系中用户字段数目(除了系统字段以外)。在 pg_attribute 里肯定有相同数目对应行。又见 pg_attribute.attnum
relchecksint2 表里的检查约束的数目;参阅 pg_constraint
reltriggersint2 表里的触发器的数目;参阅 pg_trigger
relukeysint2 未使用(不是唯一值的数目)
relfkeysint2 未使用(不是表中外键的数目)
relrefsint2 未使用
relhasoidsbool 如果为关系中每行都生成一个 OID 则为真
relhaspkeybool 如果这个表有一个(或者曾经有一个)主键,则为真。
relhasrulesbool 如表有规则就为真;参阅 pg_rewrite
relhassubclassbool 如果有(或者曾经有)任何继承的子表,为真。
relfrozenxidxid 该表中所有在这个之前的事务 ID 已经被一个固定的("frozen")事务 ID 替换。这用于跟踪该表是否需要为了防止事务 ID 重叠或者允许收缩 pg_clog 而进行清理。如果该关系不是表则为零(InvalidTransactionId)。
relaclaclitem[] 访问权限。参阅 GRANTREVOKE 获取详细信息。
reloptionstext[] 访问方法特定的选项,使用"keyword=value"格式的字符串

后退首页前进
pg_cast上一级pg_constraint