列名称 | 列类型 | 描述 |
oid
| oid
| 行标识符。 |
typname
| name
| 数据类型的名称。 |
typnamespace
| oid
| 包含此类型的名称空间的OID。 |
typowner
| oid
| 类型的拥有者。 |
typlen
| int2
| |
typbyval
| bool
| typbyval 判断内部例程传递这个类型的数值时是通过传值还是传引用。 如果typlen 不是1、2或4(或者在Datum为8字节的机器上为8),因此typbyval 最好是假。 变长类型总是传引用。注意即使长度允许传值, typbyval 也可以为假。
|
typtype
| char
| typtype 取值范围如下:
b 表示一个基类; c 表示一个组合类型(例如一个表的行类型); d 表示一个域;
e 表示一个枚举类型;
p 表示一个伪类型;
r 表示一个范围类型。
|
typcategory
| char
| typcategory 是一种任意的数据类型分类,它被分析器用来决定哪种隐式转换“更好”。
|
typispreferred
| bool
| 如果此类型在它的typcategory 中是一个更好的转换目标,此列为真。 |
typisdefined
| bool
| |
typdelim
| char
| 在分析数组输入时,分隔两个此类型值的字符。注意该分隔符是与数组元素数据类型相关联的, 而不是和数组的数据类型关联。 |
typrelid
| oid
| |
typele
| oid
| 如果typelem 不为0,则它标识pg_type 里面的另外一行。 当前类型可以被加上下标得到一个值为类型typelem 的数组来描述。 一个“真的”数组类型是变长的(typlen = -1),但是一些定长的(typlen > 0)类型也拥有非零的typelem ,比如name 和point 。 如果一个定长类型拥有一个typelem , 则它的内部形式必须是某个typelem 数据类型的值,不能有其它数据。变长数组类型有一个由该数组子例程定义的头。 |
typarray
| oid
| 如果typarray 不是0,则它标识pg_type 中的另一行,这一行是一个将此类型作为元素的“真的”数组类型。 |
typinput
| regproc
| 输入转换函数(文本格式)。 |
typoutput
| regproc
| 输出转换函数(文本格式) |
typreceive
| regproc
| 输入转换函数(二进制格式),如果没有则为0。 |
typsend
| regproc
| 输出转换函数(二进制格式),如果没有则为0。 |
typmodin
| regproc
| 类型修改器输入函数,如果类型没有提供修改器则为0。 |
typmodout
| regproc
| 类型修改器输出函数,或为0以使用标准格式。 |
typanalyze
| regproc
| 自定义ANALYZE 函数,0表示使用标准函数。 |
typalign
| char
| typalign 是当存储此类型值时要求的对齐性质。 它应用于磁盘存储以及该值在本数据库内部的大多数表现形式。 如果数值是连续存放的,比如在磁盘上的一个完整行,在这种类型的数据前会插入填充,这样它就可以按照指定边界存储。 对齐引用是该序列中第一个数据的开头。对齐引用是序列中第一个数据的开始。 可能的值为:
|
typstorage
| char
| 如果一个变长类型(typlen = -1)可被TOAST,typstorage 说明这种类型的列应采取的默认策略。 可能的值是: p (普通的): 值必须始终以普通方式存储(非varlena类型总是使用这个值)。
e (外部的): 值可以存储在一个次要 “TOAST” 关系中 (如果有一个关系, 参见pg_class.reltoastrelid ).
m (主要的): 值可以被压缩并内联存储。
x (扩展的): 值可以被压缩和/或移动到次要关系。
x toast-able 类型的常用选项。 注意m 值也可以被移动到二级存储,但只能是作为最后一种方案(e 和x 值会先被移动)。
|
typnotnull
| bool
| 表示类型上的一个非空约束。只用于域。 |
typbasetype
| oid
| |
typtypmod
| int4
| 域使用typtypmod 来记录被应用于它们基类型的typmod (如果基类型不使用typmod ,则为-1)。如果此类型不是一个域则为-1。 |
typndims
| int4
| 对于一个数组上的域,typndims 是数组维度数(即,typbasetype 是一个数组类型)。除数组类型上的域之外的类型的此列为0。 |
typcollation
| oid
| 指定此类型的排序规则。如果类型不支持排序规则,此列为0。 一个支持排序规则的基类型此处会有一个非零值,典型值为DEFAULT_COLLATION_OID 。 |
typdefaultbin
| pg_node_tree
| 如果typdefaultbin 为非空,那么它是该类型默认表达式的nodeToString() 表现形式。这个列只用于域。 |
typdefault
| text
| 如果某类型没有相关默认值,那么typdefault 为空。如果typdefaultbin 不为空, 那么typdefault 必须包含一个typdefaultbin 所指的默认表达式的人类可读的版本。 如果typdefaultbin 为空但typdefault 不为空,则typdefault 是该类型默认值的外部表现形式, 它可以被交给该类型的输入转换器来产生一个常量。 |
typacl
| aclitem[]
| 访问权限。 |