PostgreSQLLa base de données la plus sophistiquée au monde.

Version anglaise

45. Catalogues système

Les catalogues système représentent l'endroit où une base de données relationnelle stocke les métadonnées des schémas, telles que les informations sur les tables et les colonnes, et des données de suivi interne. Les catalogues système de PostgreSQL™ sont de simples tables. Elle peuvent être supprimées et recrées. Il est possible de leur ajouter des colonnes, d'y insérer et modifier des valeurs, et de mettre un joyeux bazar dans le système. En temps normal, l'utilisateur n'a aucune raison de modifier les catalogues système, il y a toujours des commandes SQL pour le faire. (Par exemple, CREATE DATABASE insère une ligne dans le catalogue pg_database -- et crée physiquement la base de données sur le disque.) Il y a des exceptions pour certaines opérations particulièrement ésotériques, comme l'ajout de méthodes d'accès aux index.

45.1. Aperçu

Tableau 45.1, « Catalogues système » liste les catalogues système. Une documentation plus détaillée des catalogues système suit.

La plupart des catalogues système sont recopiés de la base de données modèle lors de la création de la base de données et deviennent alors spécifiques à chaque base de données. Un petit nombre de catalogues sont physiquement partagés par toutes les bases de données d'une installation de PostgreSQL™. Ils sont indiqués dans les descriptions des catalogues.

Tableau 45.1. Catalogues système

Nom du catalogue Contenu
pg_aggregate fonctions d'agrégat
pg_am méthodes d'accès aux index
pg_amop opérateurs des méthodes d'accès
pg_amproc procédures de support des méthodes d'accès
pg_attrdef valeurs par défaut des colonnes
pg_attribute colonnes des tables (« attributs »)
pg_authid identifiants d'autorisation (rôles)
pg_auth_members relations d'appartenance aux identifiants d'autorisation
pg_cast conversions de types de données (cast)
pg_class tables, index, séquences, vues (« relations »)
pg_constraint contraintes de vérification, contraintes uniques, contraintes de clés primaires, contraintes de clés étrangères
pg_collation collationnement (information locale)
pg_conversion informations de conversions de codage
pg_database bases de données du cluster PostgreSQL
pg_db_role_setting configuration par rôle et par base de données
pg_default_acl droits par défaut sur des types d'objets
pg_depend dépendances entre objets de la base de données
pg_description descriptions ou commentaires des objets de base de données
pg_enum définitions des labels et des valeurs des enum
pg_extension extensions installées
pg_foreign_data_wrapper définitions des wrappers de données distantes
pg_foreign_server définitions des serveurs distants
pg_foreign_table informations supplémentaires sur les tables distantes
pg_index informations supplémentaires des index
pg_inherits hiérarchie d'héritage de tables
pg_language langages d'écriture de fonctions
pg_largeobject pages de données pour les « Large Objects »
pg_largeobject_metadata métadonnées pour les « Large Objects »
pg_namespace schémas
pg_opclass classes d'opérateurs de méthodes d'accès
pg_operator opérateurs
pg_opfamily familles d'opérateurs de méthodes d'accès
pg_pltemplate données modèles pour les langages procéduraux
pg_proc fonctions et procédures
pg_range informations sur les types d'intervalles de données
pg_rewrite règles de réécriture de requêtes
pg_seclabel labels de sécurité sur les objets d'une base de données
pg_shdepend dépendances sur les objets partagés
pg_shdescription commentaires sur les objets partagés
pg_shseclabel labels de sécurité sur des objets partagés
pg_statistic statistiques de l'optimiseur de requêtes
pg_tablespace tablespaces du cluster de bases de données
pg_trigger déclencheurs
pg_ts_config configuration de la recherche plein texte
pg_ts_config_map configuration de la recherche plein texte pour la correspondance des lexèmes (token)
pg_ts_dict dictionnaires de la recherche plein texte
pg_ts_parser analyseurs de la recherche plein texte
pg_ts_template modèles de la recherche plein texte
pg_type types de données
pg_user_mapping correspondance d'utilisateurs sur des serveurs distants