pg_attribute #目录pg_attribute存储关于表列的信息。数据库中每个表的每一列,在pg_attribute中都恰好有一行。 (其中也包括索引的属性项,实际上,凡是在pg_class中有项的对象,都有对应的属性项。)
术语属性等同于列,这里使用它只是出于历史原因。
Table 51.7. pg_attribute 列
|
列类型 描述 |
|---|
|
此列所属的表 |
|
列名称 |
|
此列的数据类型(删除的列为零) |
|
该列数据类型的 |
|
列的编号。一般列从1开始向上编号。系统列,如 |
|
|
|
如果该列是数组类型,则为维数;否则为 0。 (目前并不会强制检查数组维数,因此任何非零值实际上都只意味着“这是一个数组”。) |
|
该列类型的 |
|
该列类型的 |
|
通常是该列类型的 |
|
该列当前的压缩方法。 通常为 |
|
此列具有一个非空约束(可能尚未验证) |
|
该列有一个默认表达式或生成的表达式,在此情况下在 |
|
该列在行中完全缺失时会用到这个列的值,如果在行创建之后增加一个有非易失 |
|
如果是一个零字节( |
|
如果是零字节( |
|
该列被删除且不再有效。一个删除的列仍然物理存在于表中,但是会被分析器忽略并因此无法通过SQL访问。 |
|
该列是由关系本地定义的。注意一个列可以同时是本地定义和继承的。 |
|
该列直接祖先的数量。祖先数量非零的列不能被删除,也不能被重命名。 |
|
该列被定义的排序规则,如果该列不是一个可排序数据类型则为0。 |
|
|
|
列级访问权限, 如果此列上已有特别授予的权限 |
|
属性级选项,以“keyword=value”形式的字符串 |
|
属性级的外部数据包装器选项,以“keyword=value”形式的字符串 |
|
这个列中是一个含有一个元素的数组,其中的值被用于该列在行中完全缺失时,如果在行创建之后增加一个有非易失 |
在一个被删除的列的pg_attribute的项中,atttypid被重置为0,但attlen以及其他从pg_type拷贝的域仍然有效。 这种安排用于处理一种情况,即被删除列的数据类型后来被删除,并且因此不再有相应的pg_type行。 attlen和其他域可以被用来解释表的一行的内容。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。