32.6. attributes

La vue attributes contient des informations sur les attributs des types de données composites définis dans la base. (Notez que la vue ne donne pas d'informations sur les colonnes de table, qui sont quelque fois appelées attributs dans le contexte de PostgreSQL.)

Tableau 32.4. Colonnes de attributes

Nom Type de données Description
udt_catalog sql_identifier Nom de la base contenant le type de données (toujours la base en cours)
udt_schema sql_identifier Nom du schéma contenant le type de données
udt_name sql_identifier Nom du type de données
attribute_name sql_identifier Nom de l'attribut
ordinal_position cardinal_number Position de l'attribut dans le type de données (le décompte commence à 1)
attribute_default character_data Expression par défaut de l'attribut
is_nullable character_data YES si l'attribut peut être NULL, NO dans le cas contraire.
data_type character_data Type de données de l'attribut s'il s'agit d'un type interne ou ARRAY s'il s'agit d'un tableau (dans ce cas, voir la vue element_types), sinon USER-DEFINED (dans ce cas, le type est identifié dans attribute_udt_name et les colonnes associées).
character_maximum_length cardinal_number Si data_type identifie un caractère ou une chaîne de bits, la longueur maximum déclarée ; NULL pour tous les autres types de données ou si aucune longueur maximum n'a été déclarée.
character_octet_length cardinal_number Si data_type identifie un type caractère, la longueur maximum en octets (bytes) d'un datum (ceci ne devrait pas intéresser les utilisateurs de PostgreSQL™) ; NULL pour tous les autres types.
numeric_precision cardinal_number Si data_type identifie un type numérique, cette colonne contient la précision (déclarée ou implicite) du type pour cet attribut. La précision indique le nombre de chiffres significatifs. Elle peut être exprimée en décimal (base 10) ou en binaire (base 2) comme le précise la colonne numeric_precision_radix. Pour tous les autres types de données, cette colonne est NULL.
numeric_precision_radix cardinal_number Si data_type identifie un type numérique, cette colonne indique la base d'expression des colonnes numeric_precision et numeric_scale. La valeur est soit 2 soit 10. Pour tous les autres types de données, cette colonne est NULL.
numeric_scale cardinal_number Si data_type identifie un type numérique exact, cette colonne contient l'échelle (déclarée ou implicite) du type pour cet attribut. L'échelle indique le nombre de chiffres significatifs à droite du point décimal. Elle peut être exprimée en décimal (base 10) ou en binaire (base 2) comme le précise la colonne numeric_precision_radix. Pour tous les autres types de données, cette colonne est NULL.
datetime_precision cardinal_number Si data_type identifie une date, heure ou un interval, la précision déclarée ; NULL pour tous les autres types de données et pour ceux dont la précision n'est pas déclarée.
interval_type character_data Pas encore implémentée
interval_precision character_data Pas encore implémentée
attribute_udt_catalog sql_identifier Nom de la base où le type de données de l'attribut est défini (toujours la base en cours)
attribute_udt_schema sql_identifier Nom du schéma où le type de données de l'attribut est défini
attribute_udt_name sql_identifier Nom du type de données de l'attribut
scope_catalog sql_identifier S'applique à une fonctionnalité non disponible dans PostgreSQL
scope_schema sql_identifier S'applique à une fonctionnalité non disponible dans PostgreSQL
scope_name sql_identifier S'applique à une fonctionnalité non disponible dans PostgreSQL
maximum_cardinality cardinal_number Toujours NULL car les tableaux ont toujours une cardinalité maximale dans PostgreSQL
dtd_identifier sql_identifier Un identifiant du descripteur du type de données de la colonne, unique parmi les descripteurs de types de données de la table. Ceci est principalement utile pour des jointures avec d'autres instances de tels identifiants. (Le format spécifique de l'identifiant n'est pas défini et il n'est pas garanti qu'il reste identique dans les versions futures.)
is_derived_reference_attribute character_data S'applique à une fonctionnalité non disponible dans PostgreSQL

Voir aussi dans Section 32.12, « columns », une vue structurée de façon similaire, pour plus d'informations sur certaines des colonnes.