On this page
37.6. attributes
视图attributes
包含有关数据库中定义的复合数据类型的属性的信息。 (请注意,该视图不提供有关表列的信息,这些列有时在 PostgreSQL 上下文中称为属性.)仅显示当前用户有权访问的那些属性(通过成为该类型的所有者或对此类型具有某些特权) )。
表 37.4. attributes
列
Name | Data Type | Description |
---|---|---|
udt_catalog |
sql_identifier |
包含数据类型的数据库的名称(总是当前数据库) |
udt_schema |
sql_identifier |
包含数据类型的模式名称 |
udt_name |
sql_identifier |
数据类型名称 |
attribute_name |
sql_identifier |
属性名称 |
ordinal_position |
cardinal_number |
属性在数据类型中的 Sequences 位置(计数从 1 开始) |
attribute_default |
character_data |
属性的默认表达式 |
is_nullable |
yes_or_no |
如果该属性可能为空,则返回YES ;如果该属性不为空,则返回NO 。 |
data_type |
character_data |
属性的数据类型(如果是内置类型)或ARRAY (如果是某些数组)(在这种情况下,请参见视图element_types ),否则为USER-DEFINED (在这种情况下,该类型在attribute_udt_name 和关联的列中标识) 。 |
character_maximum_length |
cardinal_number |
如果data_type 标识字符或位字符串类型,则声明的最大长度;对于所有其他数据类型,或者如果未声明最大长度,则为 null。 |
character_octet_length |
cardinal_number |
如果data_type 标识字符类型,则数据的最大可能长度以八位字节(字节)为单位;所有其他数据类型为 null。最大八位位组长度取决于声明的字符最大长度(请参见上文)和服务器编码。 |
character_set_catalog |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
character_set_schema |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
character_set_name |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
collation_catalog |
sql_identifier |
包含属性归类的数据库的名称(总是当前数据库),如果默认或属性的数据类型不可归类,则为 null |
collation_schema |
sql_identifier |
包含属性归类的架构的名称,如果默认或属性的数据类型不可归类,则为 null |
collation_name |
sql_identifier |
属性排序规则的名称,如果默认或属性的数据类型不可排序,则为 null |
numeric_precision |
cardinal_number |
如果data_type 标识数字类型,则此列包含此属性的类型的(声明的或隐式的)精度。精度表示有效位数。如numeric_precision_radix 列中所示,它可以用十进制(以 10 为底)或二进制(以 2 为底)来表示。对于所有其他数据类型,此列为空。 |
numeric_precision_radix |
cardinal_number |
如果data_type 标识数字类型,则此列指示numeric_precision 和numeric_scale 列中的值表示的基础。该值为 2 或 10.对于所有其他数据类型,此列为空。 |
numeric_scale |
cardinal_number |
如果data_type 标识确切的数字类型,则此列包含此属性的类型的(声明的或隐式的)比例。比例尺指示小数点右边的有效数字位数。如numeric_precision_radix 列中所示,它可以用十进制(以 10 为底)或二进制(以 2 为底)来表示。对于所有其他数据类型,此列为空。 |
datetime_precision |
cardinal_number |
如果data_type 标识日期,时间,时间戳或间隔类型,则此列包含此属性类型的(声明的或隐式的)小数秒精度,即秒值中小数点后保留的小数位数。对于所有其他数据类型,此列为空。 |
interval_type |
character_data |
如果data_type 标识间隔类型,则此列包含该间隔包含此属性的字段的规范,例如YEAR TO MONTH ,DAY TO SECOND 等。如果未指定字段限制(即,间隔接受所有字段),则所有其他字段均未指定数据类型,此字段为 null。 |
interval_precision |
cardinal_number |
适用于 PostgreSQL 中不可用的功能(有关间隔类型属性的小数秒精度,请参见datetime_precision ) |
attribute_udt_catalog |
sql_identifier |
定义属性数据类型的数据库的名称(总是当前数据库) |
attribute_udt_schema |
sql_identifier |
在其中定义属性数据类型的模式的名称 |
attribute_udt_name |
sql_identifier |
属性数据类型的名称 |
scope_catalog |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
scope_schema |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
scope_name |
sql_identifier |
适用于 PostgreSQL 中不可用的功能 |
maximum_cardinality |
cardinal_number |
始终为 null,因为数组在 PostgreSQL 中始终具有无限的最大基数 |
dtd_identifier |
sql_identifier |
列的数据类型 Descriptors 的标识符,在与表有关的数据类型 Descriptors 中是唯一的。这主要用于与此类标识符的其他实例结合。 (未定义标识符的特定格式,并且不能保证在将来的版本中保持不变.) |
is_derived_reference_attribute |
yes_or_no |
适用于 PostgreSQL 中不可用的功能 |
另请参见Section 37.16(结构类似的视图)下的某些列的更多信息。