Chapitre 41. Catalogues système

Table des matières
41.1. Aperçu
41.2. pg_aggregate
41.3. pg_am
41.4. pg_amop
41.5. pg_amproc
41.6. pg_attrdef
41.7. pg_attribute
41.8. pg_cast
41.9. pg_class
41.10. pg_constraint
41.11. pg_conversion
41.12. pg_database
41.13. pg_depend
41.14. pg_description
41.15. pg_group
41.16. pg_index
41.17. pg_inherits
41.18. pg_language
41.19. pg_largeobject
41.20. pg_listener
41.21. pg_namespace
41.22. pg_opclass
41.23. pg_operator
41.24. pg_proc
41.25. pg_rewrite
41.26. pg_shadow
41.27. pg_statistic
41.28. pg_tablespace
41.29. pg_trigger
41.30. pg_type
41.31. Vues système
41.32. pg_indexes
41.33. pg_locks
41.34. pg_rules
41.35. pg_settings
41.36. pg_stats
41.37. pg_tables
41.38. pg_user
41.39. pg_views

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.

41.1. Aperçu

Tableau 41-1 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 41-1. Catalogues système

Nom du catalogueContenu
pg_aggregatefonctions d'agrégat
pg_amméthodes d'accès aux index
pg_amopopérateurs des méthodes d'accès
pg_amprocprocédures de support des méthodes d'accès
pg_attrdefvaleurs par défaut des colonnes
pg_attributecolonnes des tables (<< attributs >>)
pg_castconversions de types de données (cast)
pg_classtables, index, séquences, vues (<< relations >>)
pg_constraintcontraintes de vérification, contraintes uniques, contraintes de clés primaires, contraintes de clés étrangères
pg_conversioninformations de conversions de codage
pg_databasebases de données de l'installation PostgreSQL
pg_dependdépendances entre objets de la base de données
pg_descriptiondescriptions ou commentaires des objets de base de données
pg_groupgroupes d'utilisateurs de la base de données
pg_indexinformations supplémentaires des index
pg_inheritshiérarchie d'héritage de tables
pg_languagelangages pour écrire des fonctions
pg_largeobjectgros objets
pg_listenersupport de notification asynchrone
pg_namespaceschémas
pg_opclassclasses d'opérateurs de méthodes d'accès aux index
pg_operatoropérateurs
pg_procfonctions et procédures
pg_rewriterègles de réécriture de requêtes
pg_shadowutilisateurs de la base de données
pg_statisticstatistiques de l'optimiseur de requêtes
pg_tablespacetablespaces dans ce groupe de bases de données
pg_triggerdéclencheurs
pg_typetypes de données