attributesビューには、データベース内で定義された複合データ型の属性に関する情報が含まれます。 (このビューが、PostgreSQLコンテキスト内でよく呼び出される属性である、テーブル列に関する情報を持たない点に注意してください。)
表 33-4. attributesの列
名前 | データ型 | 説明 |
---|---|---|
udt_catalog | sql_identifier | データ型を含むデータベースの名前です。(常に現在のデータベースです。) |
udt_schema | sql_identifier | データ型を含むスキーマの名前です。 |
udt_name | sql_identifier | データ型の名前です。 |
attribute_name | sql_identifier | 属性の名前です。 |
ordinal_position | cardinal_number | データ型の属性の序数位置です。(1から始まります。) |
attribute_default | character_data | 属性のデフォルト式です。 |
is_nullable | character_data | 属性がNULLを持つことができる場合は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が文字列を識別する場合、オクテット(バイト)単位で表したデータの最大長です。 (これはPostgreSQLユーザにとっては意味がないはずです。) 他のデータ型ではNULLです。 |
numeric_precision | cardinal_number | data_typeが数値型を識別する場合、この列は属性の型の(宣言された、あるいは暗黙的な)精度です。 この精度は有効桁を意味します。 numeric_precision_radix列の指定に従って、(10を基とした)10進数、または(2を基とした)2進数表記で表現されます。 他のデータ型ではこの列はNULLです。 |
numeric_precision_radix | cardinal_number | data_typeが数値型を識別する場合、この列は、numeric_precisionおよびnumeric_scaleで表現される値の基が何かを識別します。 この値は2または10です。 他のデータ型ではこの列はNULLです。 |
numeric_scale | cardinal_number | data_typeが数値型を識別する場合、この列は、属性の型の(宣言された、あるいは暗黙的な)位取りが含まれます。 位取り少数点以下の有効桁数を意味します。 numeric_precision_radix列の指定に従って、(10を基とした)10進数、または(2を基とした)2進数表記で表現されます。 他のデータ型ではこの列はNULLです。 |
datetime_precision | cardinal_number | data_typeが日付、時刻、タイムスタンプ、または間隔型を示す場合、この列は(宣言されたか暗黙的な)この属性に対する分数秒精度を包含します。つまり、2番目の値の小数点に続く保存された小数点桁数です。他の全ての型に対してこの列はNULLです。 |
interval_type | character_data | 未実装です。 |
interval_precision | character_data | 未実装です。 |
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 | 列のデータ型記述子の、テーブルに属するデータ型記述子内で一意な識別子です。 この識別子のインスタンスを結合する時に、主に有用です (識別子の書式仕様は定義されておらず、今後のバージョンで同一性を維持する保証もありません)。 |
is_derived_reference_attribute | character_data | PostgreSQLで利用できない機能に適用されるものです。 |
後述の項33.12も参照してください。 ビューの構造が似ていますし、一部の列では更なる情報も記載されています。