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

42. Catalogues système

Les catalogues système sont le lieu où une base de données relationnelle stocke les métadonnées des schémas, comme les informations sur les tables et les colonnes, et des données de suivi internes. Les catalogues système de PostgreSQL™ sont de simples tables. Vous pouvez les supprimer et les recréer, ajouter des colonnes, insérer et mettre à jour des valeurs, et mettre un joyeux bazar dans votre système. Normalement, on ne devrait pas modifier les catalogues système soi-mê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.

42.1. Aperçu

Tableau 42.1, « Catalogues système » liste les catalogues système. Une documentation détaillée sur les catalogues systèmes vient plus loin.

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 sont donc 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 42.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_autovacuum paramètres de configuration de l'autovacuum par relation
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_conversion informations de conversions de codage
pg_database bases de données de l'installation PostgreSQL
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_index informations supplémentaires des index
pg_inherits hiérarchie d'héritage de tables
pg_language langages pour écrire des fonctions
pg_largeobject gros objets
pg_listener support de notification asynchrone
pg_namespace schémas
pg_opclass classes d'opérateurs de méthodes d'accès aux index
pg_operator opérateurs
pg_pltemplate données modèles pour les langages de procédures
pg_proc fonctions et procédures
pg_rewrite règles de réécriture de requêtes
pg_shdepend dépendances sur les objets partagés
pg_statistic statistiques de l'optimiseur de requêtes
pg_tablespace tablespaces dans ce groupe de bases de données
pg_trigger déclencheurs
pg_type types de données