PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 13.0 » Interfaces client » Schéma d'information » element_types

36.24. element_types

La vue element_types contient les descripteurs de type de données des éléments de tableaux. Lorsqu'une colonne de table, un attribut de type composite, un domaine, un paramètre de fonction ou un code de retour de fonction est définie comme un type tableau, la vue respective du schéma d'information contient seulement ARRAY dans la colonne data_type. Pour obtenir des informations sur le type d'élément du tableau, il est possible de joindre la vue respective avec cette vue. Par exemple, pour afficher les colonnes d'une table avec les types de données et les types d'élément de tableau, si applicable, on peut écrire :

SELECT c.column_name, c.data_type, e.data_type AS element_type
FROM information_schema.columns c LEFT JOIN information_schema.element_types e
     ON ((c.table_catalog, c.table_schema, c.table_name, 'TABLE', c.dtd_identifier)
       = (e.object_catalog, e.object_schema, e.object_name, e.object_type, e.collection_type_identifier))
WHERE c.table_schema = '...' AND c.table_name = '...'
ORDER BY c.ordinal_position;
   

Cette vue n'inclut que les objets auxquels l'utilisateur courant a accès, parce que propriétaire ou disposant de quelque privilège.

Tableau 36.22. Colonnes de element_types

Type de la colonne

Description

object_catalog sql_identifier

Nom de la base de données contenant l'objet qui utilise le tableau décrit (toujours la base de données courante)

object_schema sql_identifier

Nom du schéma contenant l'objet utilisant le tableau décrit

object_name sql_identifier

Nom de l'objet utilisant le tableau décrit

object_type character_data

Le type de l'objet utilisant le tableau décrit : il fait partie de TABLE (le tableau est utilisé par une colonne de cette table), USER-DEFINED TYPE (le tableau est utilisé par un attribut de ce type composite), DOMAIN (le tableau est utilisé par ce domaine), ROUTINE (le tableau est utilisé par un paramètre ou le type du code de retour de cette fonction).

collection_type_identifier sql_identifier

L'identifiant du descripteur de type de données du tableau décrit. Utilisez cette colonne pour faire une jointure avec les colonnes dtd_identifier des autres vues du schéma d'informations.

data_type character_data

Le type de données des éléments du tableau s'il s'agit d'un type interne, sinon USER-DEFINED (dans ce cas, le type est identifié comme udt_name et dispose de colonnes associées).

character_maximum_length cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

character_octet_length cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

character_set_catalog sql_identifier

S'applique à une fonctionnalité non disponible dans PostgreSQL

character_set_schema sql_identifier

S'applique à une fonctionnalité non disponible dans PostgreSQL

character_set_name sql_identifier

S'applique à une fonctionnalité non disponible dans PostgreSQL

collation_catalog sql_identifier

Nom de la base contenant le collationnement du type de l'élément (toujours la base de données courante), NULL s'il s'agit du collationnement par défaut ou si le type de données de l'élément ne peut pas avoir de collationnement

collation_schema sql_identifier

Nom du schéma contenant le collationnement du type de l'élément, NULL s'il s'agit du collationnement par défaut ou si le type de données de l'élément ne peut pas avoir de collationnement

collation_name sql_identifier

Nom du collationnement du type de l'élément, NULL s'il s'agit du collationnement par défaut ou si le type de données de l'élément ne peut pas avoir de collationnement

numeric_precision cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

numeric_precision_radix cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

numeric_scale cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

datetime_precision cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

interval_type character_data

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

interval_precision cardinal_number

Toujours NULL car cette information n'est pas appliquée aux types de données d'éléments de tableau dans PostgreSQL

domain_default character_data

Pas encore implanté

udt_catalog sql_identifier

Nom de la base de données pour lequel le type de données est défini (toujours la base de données courante)

udt_schema sql_identifier

Nom du schéma dans lequel est défini le type de données des éléments

udt_name sql_identifier

Nom du type de données des éléments

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 n'ont pas de limite maximale de cardinalité dans PostgreSQL

dtd_identifier sql_identifier

Un identifiant du descripteur de type de données pour cet élément. Ceci n'est actuellement pas utile.