47. Catalogues système

47.1. Aperçu
47.2. pg_aggregate
47.3. pg_am
47.4. pg_amop
47.5. pg_amproc
47.6. pg_attrdef
47.7. pg_attribute
47.8. pg_authid
47.9. pg_auth_members
47.10. pg_cast
47.11. pg_class
47.12. pg_event_trigger
47.13. pg_constraint
47.14. pg_collation
47.15. pg_conversion
47.16. pg_database
47.17. pg_db_role_setting
47.18. pg_default_acl
47.19. pg_depend
47.20. pg_description
47.21. pg_enum
47.22. pg_extension
47.23. pg_foreign_data_wrapper
47.24. pg_foreign_server
47.25. pg_foreign_table
47.26. pg_index
47.27. pg_inherits
47.28. pg_language
47.29. pg_largeobject
47.30. pg_largeobject_metadata
47.31. pg_namespace
47.32. pg_opclass
47.33. pg_operator
47.34. pg_opfamily
47.35. pg_pltemplate
47.36. pg_proc
47.37. pg_range
47.38. pg_rewrite
47.39. pg_seclabel
47.40. pg_shdepend
47.41. pg_shdescription
47.42. pg_shseclabel
47.43. pg_statistic
47.44. pg_tablespace
47.45. pg_trigger
47.46. pg_ts_config
47.47. pg_ts_config_map
47.48. pg_ts_dict
47.49. pg_ts_parser
47.50. pg_ts_template
47.51. pg_type
47.52. pg_user_mapping
47.53. Vues système
47.54. pg_available_extensions
47.55. pg_available_extension_versions
47.56. pg_cursors
47.57. pg_group
47.58. pg_indexes
47.59. pg_locks
47.60. pg_matviews
47.61. pg_prepared_statements
47.62. pg_prepared_xacts
47.63. pg_roles
47.64. pg_rules
47.65. pg_seclabels
47.66. pg_settings
47.67. pg_shadow
47.68. pg_stats
47.69. pg_tables
47.70. pg_timezone_abbrevs
47.71. pg_timezone_names
47.72. pg_user
47.73. pg_user_mappings
47.74. pg_views

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.

47.1. Aperçu

Tableau 47.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 47.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_event_trigger triggers sur événement
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