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

Version anglaise

Documentation PostgreSQL 9.3.5

The PostgreSQL Global Development Group


Table des matières

Préface
1. Définition de PostgreSQL
2. Bref historique de PostgreSQL
3. Conventions
4. Pour plus d'informations
5. Lignes de conduite pour les rapports de bogues
I. Tutoriel
1. Démarrage
2. Le langage SQL
3. Fonctionnalités avancées
II. Langage SQL
4. Syntaxe SQL
5. Définition des données
6. Manipulation de données
7. Requêtes
8. Types de données
9. Fonctions et opérateurs
10. Conversion de types
11. Index
12. Recherche plein texte
13. Contrôle d'accès simultané
14. Conseils sur les performances
III. Administration du serveur
15. Procédure d'installation de PostgreSQL du code source
16. Installation à partir du code source sur Windows
17. Configuration du serveur et mise en place
18. Configuration du serveur
19. Authentification du client
20. Rôles de la base de données
21. Administration des bases de données
22. Localisation
23. Planifier les tâches de maintenance
24. Sauvegardes et restaurations
25. Haute disponibilité, répartition de charge et réplication
26. Configuration de la récupération
27. Surveiller l'activité de la base de données
28. Surveiller l'utilisation des disques
29. Fiabilité et journaux de transaction
30. Tests de régression
IV. Interfaces client
31. libpq - Bibliothèque C
32. Objets larges
33. ECPG SQL embarqué en C
34. Schéma d'information
V. Programmation serveur
35. Étendre SQL
36. Déclencheurs (triggers)
37. Déclencheurs (triggers) sur évènement
38. Système de règles
39. Langages de procédures
40. PL/pgSQL - Langage de procédures SQL
41. PL/Tcl - Langage de procédures Tcl
42. PL/Perl - Langage de procédures Perl
43. PL/Python - Langage de procédures Python
44. Interface de programmation serveur
45. Processus en tâche de fond (background worker)
VI. Référence
I. Commandes SQL
II. Applications client de PostgreSQL
III. Applications relatives au serveur PostgreSQL
VII. Internes
46. Présentation des mécanismes internes de PostgreSQL
47. Catalogues système
48. Protocole client/serveur
49. Conventions de codage pour PostgreSQL
50. Support natif des langues
51. Écrire un gestionnaire de langage procédural
52. Écrire un wrapper de données distantes
53. Optimiseur génétique de requêtes (Genetic Query Optimizer)
54. Définition de l'interface des méthodes d'accès aux index
55. Index GiST
56. Index SP-GiST
57. Index GIN
58. Stockage physique de la base de données
59. Interface du moteur, BKI
60. Comment le planificateur utilise les statistiques
VIII. Annexes
A. Codes d'erreurs de PostgreSQL
B. Support de date/heure
C. Mots-clé SQL
D. Conformité SQL
E. Notes de version
F. Modules supplémentaires fournis
G. Programmes supplémentaires fournis
H. Projets externes
I. Dépôt du code source
J. Documentation
K. Acronymes
L. Traduction française
Bibliographie

Liste des tableaux

4.1. Séquences d'échappements avec antislash
4.2. Précédence des opérateurs (en ordre décroissant)
8.1. Types de données
8.2. Types numériques
8.3. Types monétaires
8.4. Types caractère
8.5. Types caractères spéciaux
8.6. Types de données binaires
8.7. Octets littéraux bytea à échapper
8.8. Octets échappés en sortie pour bytea
8.9. Types date et heure
8.10. Saisie de date
8.11. Saisie d'heure
8.12. Saisie des fuseaux horaires
8.13. Saisie de dates/heures spéciales
8.14. Styles d'affichage de date/heure
8.15. Convention de présentation des dates
8.16. Abréviations d'unités d'intervalle ISO 8601
8.17. Saisie d'intervalle
8.18. Exemples de styles d'affichage d'intervalles
8.19. Type de données booléen
8.20. Types géométriques
8.21. Types d'adresses réseau
8.22. Exemples de saisie de types cidr
8.23. Types identifiant d'objet
8.24. Pseudo-Types
9.1. Opérateurs de comparaison
9.2. Opérateurs mathématiques
9.3. Fonctions mathématiques
9.4. Fonctions trigonométriques
9.5. Fonctions et opérateurs SQL pour le type chaîne
9.6. Autres fonctions de chaîne
9.7. Conversions intégrées
9.8. Fonctions et opérateurs SQL pour chaînes binaires
9.9. Autres fonctions sur les chaînes binaires
9.10. Opérateurs sur les chaînes de bits
9.11. Opérateurs de correspondance des expressions rationnelles
9.12. Atomes d'expressions rationnelles
9.13. quantificateur d'expressions rationnelles
9.14. Contraintes des expressions rationnelles
9.15. Échappements de caractère dans les expressions rationnelles
9.16. Échappement de raccourcis de classes dans les expressions rationnelles
9.17. Échappements de contrainte dans les expressions rationnelles
9.18. Rétro-références dans les expressions rationnelles
9.19. Lettres d'option intégrées à une ERA
9.20. Fonctions de formatage
9.21. Modèles pour le formatage de champs de type date/heure
9.22. Modificateurs de motifs pour le formatage des dates/heures
9.23. Motifs de modèle pour le formatage de valeurs numériques
9.24. Modifications de motifs pour le formatage numérique
9.25. Exemples avec to_char
9.26. Opérateurs date/heure
9.27. Fonctions date/heure
9.28. Variantes AT TIME ZONE
9.29. Fonctions de support enum
9.30. Opérateurs géométriques
9.31. Fonctions géométriques
9.32. Fonctions de conversion de types géométriques
9.33. Opérateurs cidr et inet
9.34. Fonctions cidr et inet
9.35. Fonctions macaddr
9.36. Opérateurs de recherche plein texte
9.37. Fonctions de la recherche plein texte
9.38. Fonctions de débogage de la recherche plein texte
9.39. Opérateurs JSON
9.40. Fonctions de support JSON
9.41. Fonctions séquence
9.42. Opérateurs pour les tableaux
9.43. Fonctions pour les tableaux
9.44. Opérateurs pour les types range
9.45. Fonctions range
9.46. Fonctions d'agrégat générales
9.47. Fonctions d'agrégats pour les statistiques
9.48. Fonctions Window généralistes
9.49. Fonctions de génération de séries
9.50. Fonctions de génération d'indices
9.51. Fonctions d'information de session
9.52. Fonctions de consultation des privilèges d'accès
9.53. Fonctions d'interrogation de visibilité dans les schémas
9.54. Fonctions d'information du catalogue système
9.55. Fonctions d'informations sur les commentaires
9.56. ID de transaction et instantanés
9.57. Composants de l'instantané
9.58. Fonctions agissant sur les paramètres de configuration
9.59. Fonctions d'envoi de signal au serveur
9.60. Fonctions de contrôle de la sauvegarde
9.61. Fonctions d'information sur la restauration
9.62. Fonctions de contrôle de la restauration
9.63. Fonction de synchronisation de snapshot
9.64. Fonctions de calcul de la taille des objets de la base de données
9.65. Fonctions de récupération de l'emplacement des objets de la base de données
9.66. Fonctions d'accès générique aux fichiers
9.67. Fonctions de verrous consultatifs
12.1. Types de jeton de l'analyseur par défaut
13.1. Niveaux d'isolation standards des transactions SQL
13.2. Modes de verrou conflictuels
17.1. Paramètres system v ipc
17.2. Utilisation des fichiers serveur SSL
18.1. Niveaux de sévérité des messages
18.2. Clé d'option courte
22.1. Jeux de caractères de PostgreSQL
22.2. Conversion de jeux de caractères client/serveur
25.1. Matrice de fonctionnalités : haute disponibilité, répartition de charge et réplication
27.1. Vues statistiques standards
27.2. Vue pg_stat_activity
27.3. Vue pg_stat_bgwriter
27.4. Vue pg_stat_database
27.5. Vue pg_stat_all_tables
27.6. Vue pg_stat_all_indexes
27.7. Vue pg_statio_all_tables
27.8. Vue pg_statio_all_indexes
27.9. Vue pg_statio_all_sequences
27.10. Vue pg_stat_user_functions
27.11. Vue pg_stat_replication
27.12. Vue pg_stat_database_conflicts
27.13. Fonctions supplémentaires de statistiques
27.14. Fonctions statistiques par processus serveur
27.15. Sondes disponibles pour DTrace
27.16. Types définis utilisés comme paramètres de sonde
31.1. Description des modes SSL
31.2. Utilisation des fichiers SSL libpq/client
33.1. Correspondance Entre les Types PostgreSQL et les Types de Variables C
33.2. Formats d'Entrée Valides pour PGTYPESdate_from_asc
33.3. Formats d'Entrée Valides pour PGTYPESdate_fmt_asc
33.4. Formats d'Entrée Valides pour rdefmtdate
33.5. Formats d'Entrée Valide pour PGTYPEStimestamp_from_asc
34.1. Colonnes de information_schema_catalog_name
34.2. Colonnes de administrable_role_authorizations
34.3. Colonnes de applicable_roles
34.4. Colonnes de attributes
34.5. Colonnes de character_sets
34.6. Colonnes de check_constraint_routine_usage
34.7. Colonnes de check_constraints
34.8. Colonnes de collations
34.9. Colonnes de collation_character_set_applicability
34.10. Colonnes de column_domain_usage
34.11. Colonnes de column_options
34.12. Colonnes de column_privileges
34.13. Colonnes de column_udt_usage
34.14. Colonnes de columns
34.15. Colonnes de constraint_column_usage
34.16. Colonnes de constraint_table_usage
34.17. Colonnes de data_type_privileges
34.18. Colonnes de domain_constraints
34.19. Colonnes de domain_udt_usage
34.20. Colonnes de domains
34.21. Colonnes de element_types
34.22. Colonnes de enabled_roles
34.23. Colonnes de foreign_data_wrapper_options
34.24. Colonnes de foreign_data_wrappers
34.25. Colonnes de foreign_server_options
34.26. Colonnes de foreign_servers
34.27. Colonnes de foreign_table_options
34.28. Colonnes de foreign_tables
34.29. Colonnes de key_column_usage
34.30. Colonnes de parameters
34.31. Colonnes de referential_constraints
34.32. Colonnes de role_column_grants
34.33. Colonnes de role_routine_grants
34.34. Colonnes de role_table_grants
34.35. Colonnes de role_udt_grants
34.36. Colonnes de role_usage_grants
34.37. Colonnes de routine_privileges
34.38. Colonnes de routines
34.39. Colonnes de schemata
34.40. Colonnes de sequences
34.41. Colonnes de sql_features
34.42. Colonnes de sql_implementation_info
34.43. Colonnes de sql_languages
34.44. Colonnes de sql_packages
34.45. Colonnes de sql_parts
34.46. Colonnes de sql_sizing
34.47. Colonnes de sql_sizing_profiles
34.48. Colonnes de table_constraints
34.49. Colonnes de table_privileges
34.50. Colonnes de tables
34.51. Colonnes de triggered_update_columns
34.52. Colonnes de triggers
34.53. Colonnes de udt_privileges
34.54. Colonnes de usage_privileges
34.55. Colonnes de user_defined_types
34.56. Colonnes de user_mapping_options
34.57. Colonnes de user_mappings
34.58. Colonnes de view_column_usage
34.59. Colonnes de view_routine_usage
34.60. Colonnes de view_table_usage
34.61. Colonnes de views
35.1. Équivalence des types C et des types SQL intégrés
35.2. Stratégies B-tree
35.3. Stratégies de découpage
35.4. Stratégies « R-tree » pour GiST à deux dimensions
35.5. Stratégies point SP-GiST
35.6. Stratégies des tableaux GIN
35.7. Fonctions d'appui de B-tree
35.8. Fonctions d'appui pour découpage
35.9. Fonctions d'appui pour GiST
35.10. Fonctions de support SP-GiST
35.11. Fonctions d'appui GIN
37.1. Support des triggers sur évènement par commande
40.1. Diagnostiques et erreurs
47.1. Catalogues système
47.2. Les colonnes de pg_aggregate
47.3. Colonnes de pg_am
47.4. Colonnes de pg_amop
47.5. Colonnes de pg_amproc
47.6. Colonnes de pg_attrdef
47.7. Colonnes de pg_attribute
47.8. Colonnes de pg_authid
47.9. Colonnes de pg_auth_members
47.10. Colonnes de pg_cast
47.11. Colonnes de pg_class
47.12. Colonnes de pg_event_trigger
47.13. Colonnes de pg_collation
47.14. Colonnes de pg_constraint
47.15. Colonnes de pg_conversion
47.16. Colonnes de pg_database
47.17. Colonnes de pg_db_role_setting
47.18. Colonnes de pg_default_acl
47.19. Colonnes de pg_depend
47.20. Colonnes de pg_description
47.21. Colonnes de pg_enum
47.22. Colonnes de pg_extension
47.23. Colonnes de pg_foreign_data_wrapper
47.24. Colonnes pg_foreign_server
47.25. Colonnes de pg_foreign_table
47.26. Colonnes de pg_index
47.27. Colonnes de pg_inherits
47.28. Colonnes de pg_language
47.29. Colonnes de pg_largeobject
47.30. Colonnes de pg_largeobject_metadata
47.31. Colonnes de pg_namespace
47.32. Colonnes de pg_opclass
47.33. Colonnes de pg_operator
47.34. Colonnes de pg_opfamily
47.35. Colonnes de pg_pltemplate
47.36. Colonnes de pg_proc
47.37. Colonnes de pg_range
47.38. Colonnes de pg_rewrite
47.39. Colonnes de pg_seclabel
47.40. Colonnes de pg_shdepend
47.41. Colonnes de pg_shdescription
47.42. Colonnes de pg_shseclabel
47.43. Colonnes de pg_statistic
47.44. Colonnes de pg_tablespace
47.45. Colonnes de pg_trigger
47.46. Colonnes de pg_ts_config
47.47. Colonnes de pg_ts_config_map
47.48. Colonnes de pg_ts_dict
47.49. Colonnes de pg_ts_parser
47.50. Colonnes de pg_ts_template
47.51. Colonnes de pg_type
47.52. Codes typcategory
47.53. Colonnes de pg_user_mapping
47.54. Vues système
47.55. Colonnes de pg_available_extensions
47.56. Colonnes de pg_available_extension_versions
47.57. Colonnes de pg_cursors
47.58. Colonnes de pg_group
47.59. Colonnes de pg_indexes
47.60. Colonnes pg_locks
47.61. Colonnes de pg_matviews
47.62. Colonnes de pg_prepared_statements
47.63. Colonnes de pg_prepared_xacts
47.64. Colonnes de pg_roles
47.65. Colonnes de pg_rules
47.66. Colonnes de pg_seclabels
47.67. Colonnes de pg_settings
47.68. Colonnes de pg_shadow
47.69. Colonnes de pg_stats
47.70. Colonnes de pg_tables
47.71. Colonnes de pg_timezone_abbrevs
47.72. Colonnes de pg_timezone_names
47.73. Colonnes de pg_user
47.74. Colonnes de pg_user_mappings
47.75. Colonnes de pg_views
58.1. Contenu de PGDATA
58.2. Disposition d'une page
58.3. Disposition de PageHeaderData
58.4. Disposition de HeapTupleHeaderData
A.1. Codes d'erreur de PostgreSQL
B.1. Noms de mois
B.2. Noms des jours de la semaine
B.3. Modificateurs de Champs Date/Heure
C.1. Mots-clé SQL
F.1. Représentations externes d'un cube
F.2. Opérateurs GiST du type cube
F.3. Fonctions cube
F.4. Fonctions earthdistance par cubes
F.5. Opérateurs earthdistance par points
F.6. Opérateurshstore
F.7. Fonctions hstore
F.8. Fonctions intarray
F.9. Opérateurs d'intarray
F.10. Types de données isn
F.11. Fonctions de isn
F.12. Opérateurs ltree
F.13. Fonctions ltree
F.14. Colonnes de pg_buffercache
F.15. Algorithmes supportés par crypt()
F.16. Nombre d'itération pour crypt()
F.17. Vitesse de l'algorithm de hachage
F.18. Résumé de fonctionnalités avec et sans OpenSSL
F.19. Colonnes de pgrowlocks
F.20. Colonnes de pg_stat_statements
F.21. Colonnes de pgstattuple
F.22. Fonctions de pg_trgm
F.23. Opérateurs de pg_trgm
F.24. Représentations externes de seg
F.25. Exemples d'entrées valides de type seg
F.26. Opérateurs GiST du type Seg
F.27. Fonctions Sepgsql
F.28. Fonctions tablefunc
F.29. Paramètres connectby
F.30. Fonctions pour la génération d'UUID
F.31. Fonctions renvoyant des constantes UUID
F.32. Fonctions
F.33. Paramètres de xpath_table
H.1. Interfaces clients maintenus en externe
H.2. Langages procéduraux maintenus en externe

Liste des exemples

8.1. Utilisation des types caractère
8.2. Utilisation du type boolean.
8.3. Utiliser les types de chaînes de bits
10.1. Résolution du type d'opérateur factoriel
10.2. Résolution de types pour les opérateurs de concaténation de chaînes
10.3. Résolution de types pour les opérateurs de valeur absolue et de négation
10.4. Résolution du type d'opérateur avec des inclusions de tableaux
10.5. Résolution de types pour les arguments de la fonction arrondie
10.6. Résolution de types pour les fonctions retournant un segment de chaîne
10.7. Conversion de types pour le stockage de character
10.8. Résolution de types avec des types sous-spécifiés dans une union
10.9. Résolution de types dans une union simple
10.10. Résolution de types dans une union transposée
11.1. Mettre en place un index partiel pour exclure des valeurs courantes
11.2. Mettre en place un index partiel pour exclure les valeurs inintéressantes
11.3. Mettre en place un index d'unicité partiel
19.1. Exemple d'entrées de pg_hba.conf
19.2. Un exemple de fichier pg_ident.conf
31.1. Premier exemple de programme pour libpq
31.2. Deuxième exemple de programme pour libpq
31.3. Troisième exemple de programme pour libpq
32.1. Exemple de programme sur les objets larges avec libpq
33.1. Programme de Démonstration SQLDA
33.2. Programme ECPG Accédant à un Large Object
39.1. Installation manuelle de PL/Perl
40.1. Mettre entre guillemets des valeurs dans des requêtes dynamiques
40.2. Exceptions avec UPDATE/INSERT
40.3. Une procédure trigger PL/pgSQL
40.4. Une procédure d'audit par trigger en PL/pgSQL
40.5. Une fonction trigger en PL/pgSQL surune vue pour un audit
40.6. Une procédure trigger PL/pgSQL pour maintenir une table résumée
40.7. Une procédure PL/pgSQL pour un trigger d'événement
40.8. Portage d'une fonction simple de PL/SQL vers PL/pgSQL
40.9. Portage d'une fonction qui crée une autre fonction de PL/SQL vers PL/pgSQL
40.10. Portage d'une procédure avec manipulation de chaînes et paramètres OUT de PL/SQL vers PL/pgSQL
40.11. Portage d'une procédure de PL/SQL vers PL/pgSQL
F.1. Créer une table distante pour les journaux applicatifs PostgreSQL au format CSV