pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
pg_class 登记表以及几乎所有其他具有列或类似于表的东西。这包括索引(但另见 pg_index)、序列、视图和一些特殊关系;参见 relkind。下文中,当我们指所有这些类型的对象时,就统称“关系”。并非所有字段对所有关系类型都有意义。
表 3.9. pg_class 列
| 名称 | 类型 | 引用 | 描述 |
|---|---|---|---|
| relname | name |
表、索引、视图等的名字 | |
| relnamespace | oid |
pg_namespace.oid | 包含该关系的名字空间的OID |
| reltype | oid |
pg_type.oid | 与该表对应的数据类型的 OID(如果有的话;索引为零,因为索引没有 pg_type 项) |
| relowner | int4 |
pg_shadow.usesysid | 关系的拥有者 |
| relam | oid |
pg_am.oid | 如果这是索引,则为使用的访问方法(B-树、hash 等) |
| relfilenode | oid |
该关系在磁盘上的文件名;如果没有则为 0 | |
| relpages | int4 |
该表在磁盘上的表示的大小,以页(大小为 BLCKSZ)计。这只是规划器使用的一个估计值。它由 VACUUM、ANALYZE 和 CREATE INDEX 更新。 |
|
| reltuples | float4 |
表中的元组数。这只是规划器使用的一个估计值。它由 VACUUM、ANALYZE 和 CREATE INDEX 更新。 |
|
| reltoastrelid | oid |
pg_class.oid | 与该表相关联的TOAST表的OID,如果没有则为零。TOAST表将大属性“线外”存储在一个二级表中。 |
| reltoastidxid | oid |
pg_class.oid | 该约束所在的表,如果不是表约束则为零 |
| relhasindex | bool |
如果这是一个表并且它有(或最近有过)任何索引,则为真。它由 CREATE INDEX 设置,但 DROP INDEX 不会立即清除。VACUUM 在发现表没有索引时会清除 relhasindex。 | |
| relisshared | bool |
如果该表在集簇中的所有数据库间共享则为真。只有某些系统目录(如pg_database)是共享的。 |
|
| relkind | char |
'r' = 普通表,'i' = 索引,'S' = 序列,'v' = 视图,'c' = 复合类型,'s' = 特殊,'t' = TOAST 表 | |
| relnatts | int2 |
关系中用户列的数量(不计系统列)。在pg_attribute中必须有这么多对应项。 另请参阅 pg_attribute.attnum。 |
|
| relchecks | int2 |
表上的检查约束数;参见 pg_constraint 目录 |
|
| reltriggers | int2 |
表上的触发器数;参见 pg_trigger 目录 |
|
| relukeys | int2 |
未使用(不是唯一键的数目) | |
| relfkeys | int2 |
未使用(不是表上外键的数目) | |
| relrefs | int2 |
未使用 | |
| relhasoids | bool |
如果为该关系的每一行生成一个 OID,则为真。 | |
| relhaspkey | bool |
如果该表有(或曾经有过)主键,则为真。 | |
| relhasrules | bool |
表有规则;参见 pg_rewrite 目录 |
|
| relhassubclass | bool |
至少有一个表继承自该表 | |
| relacl | aclitem[] |
访问权限。详见 GRANT 和 REVOKE 的说明。 |
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。