La vue user_defined_types contient actuellement tous les types composites définis dans la base de données courante. Seuls sont montrés les types auxquels l'utilisateur courant a accès (parce qu'il en est le propriétaire soit parce qu'il dispose de certains droits).
SQL connaît deux genres de types définis par les utilisateursénbsp;: les types structurés (aussi connu sous le nom de types composites dans PostgreSQL™) et les types distincts (non implémentés dans PostgreSQL™). Pour être prêt, utilisez la colonne user_defined_type_category pour les différencier. Les autres types définis par l'utilisateur comme les types de base et les énumérations, qui sont des extensions PostgreSQL™, ne sont pas affichés ici. Pour les domaines, voir Section 34.22, « domains ».
Tableau 34.55. Colonnes de user_defined_types
| Nom | Type de données | Description |
|---|---|---|
| user_defined_type_catalog | sql_identifier | Nom de la base de données qui contient ce type (toujours la base de données courante) |
| user_defined_type_schema | sql_identifier | Nom du schéma contenant ce type |
| user_defined_type_name | sql_identifier | Nom du type |
| user_defined_type_category | character_data | Actuellement, toujours STRUCTURED |
| is_instantiable | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| is_final | yes_or_no | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ordering_form | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ordering_category | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ordering_routine_catalog | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ordering_routine_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ordering_routine_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| reference_type | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| data_type | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| character_maximum_length | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| character_octet_length | cardinal_number | S'applique à une fonctionnalité non disponible 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 | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| collation_schema | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| collation_name | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| numeric_precision | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| numeric_precision_radix | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| numeric_scale | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| datetime_precision | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| interval_type | character_data | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| interval_precision | cardinal_number | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| source_dtd_identifier | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |
| ref_dtd_identifier | sql_identifier | S'applique à une fonctionnalité non disponible dans PostgreSQL™ |