L'utilisateur de bases de données trouvera dans ce support les informations indispensables pour exploiter au mieux les possibilités de PostgreSQL (en version 12 au moment de la rédaction).
Les premiers chapitres du livre couvrent l'installation de PostgreSQL sur Windows et Linux ainsi que les outils graphiques tels que PgAdmin, DBeaver ou OmniDB permettant l'utilisation de PostgreSQL. Deux chapitres sont ensuite dédiés au langage SQL, permettant la...
L'utilisateur de bases de données trouvera dans ce support les informations indispensables pour exploiter au mieux les possibilités de PostgreSQL (en version 12 au moment de la rédaction).
Les premiers chapitres du livre couvrent l'installation de PostgreSQL sur Windows et Linux ainsi que les outils graphiques tels que PgAdmin, DBeaver ou OmniDB permettant l'utilisation de PostgreSQL. Deux chapitres sont ensuite dédiés au langage SQL, permettant la définition des structures de données, puis la manipulation des données et en particulier les différentes possibilités de l'ordre SELECT.
Pour finir, l'auteur détaille, dans des chapitres dédiés, l'utilisation des fonctions et procédures avec les langages Pl/pgSQL et Python, les notions de performances des requêtes avec les plans d'exécution et les index ou encore la programmation côté client.
Des éléments complémentaires sont disponibles en téléchargement sur le site www.editions-eni.fr.
4.3 Fonctions et opérateurs sur les chaînes de caractères
4.4 Fonctions et opérateurs sur les dates
4.5 Fonctions et opérateurs sur les tableaux
4.6 Fonctions et opérateurs de données JSON
4.7 Manipulation de documents JSON avec les expressions JSONPATH
4.8 Fonctions de manipulation de données XML
4.9 Fonctions de manipulation des plages de valeurs
5. Création d’index
5.1 Les index
5.2 Création d’un index
5.3 Les différents types d’index
5.4 Les classes d’opérateurs
5.5 Modification d’un index
5.6 Suppression d’un index
6. Langage de contrôle
6.1 Gestion des rôles : utilisateurs et groupes
6.1.1 Définition d’un rôle comme compte d’utilisateur
6.1.2 Définition d’un rôle comme groupe
6.1.3 Appartenance à un groupe et héritage
6.1.4 Utilisation des privilèges d’un groupe
6.1.5 Modification d’un rôle
6.1.6 Variables de sessions
6.1.7 Suppression d’un rôle
6.1.8 Gestion de l’appartenance à un rôle
6.2 Gratification et révocation des droits
6.3 Définition des droits par défaut
SQL - manipulation
1. Langage SQL : manipulation des données
2. Langage de modification des données
2.1 Insertion et copie de données
2.2 L’ordre COPY FROM
2.3 Mise à jour de données
2.4 Suppression de données
3. Langage de requêtage des données
3.1 Formation des tuples
3.2 Sélection des tables
3.3 La commande TABLE
3.4 Projection, sélection
3.4.1 Projection des champs
3.4.2 Sélection des lignes
3.5 Les sous-requêtes
3.6 Les jointures
3.6.1 Produit cartésien
3.6.2 Jointure interne
3.6.3 Jointure externe
3.7 Les agrégats et les regroupements
3.7.1 Fonctions d’agrégat
3.7.2 Exemples d’agrégats
3.7.3 Les regroupements
3.8 Les fonctions fenêtrées
3.8.1 Fonctions fenêtrées
3.8.2 Définition des fenêtres
3.8.3 Exemples de requêtes
3.9 Union, intersection et exception
3.10 Tri du résultat des requêtes
3.11 Limiter les résultats des requêtes
3.12 Expressions de table : CTE
3.13 Écritures de données dans les expressions de tables (CTE)
3.14 Création de vues
3.14.1 Vues matérialisées
3.14.2 Suppression de vues
3.15 L’ordre COPY
4. Transactions et verrouillage
4.1 Validation des transactions
4.2 Types de verrous
4.3 Verrouillage explicite
4.4 Niveaux d’isolation
4.5 Verrous d'interblocage
Fonctions
1. Fonctions et procédures
1.1 Fonctions
1.2 Langage SQL
2. Langage PL/pgSQL
2.1 Syntaxe du langage
2.1.1 Déclaration de variables
2.1.2 Exécuter une requête
2.1.3 Structures de contrôle conditionnelles
2.1.4 Structures de contrôle itératives
2.1.5 Curseurs
2.1.6 Diagnostic et gestion d’erreurs
2.1.7 Fonction anonyme DO
2.1.8 Fonctions retournant des ensembles
2.2 Débogage de fonction PL/pgSQL
2.3 Procédure stockée
3. Langage PL/Python
3.1 Requête SQL
3.2 Typage de données
3.3 Exemple de fonction
4. Déclencheurs
4.1 Code PL/pgSQL
4.2 Exemple
4.3 Suppression de déclencheurs
Performances des requêtes
1. Introduction
2. La commande EXPLAIN
3. Affichage d’un plan d’exécution
4. Interpréter un plan d’exécution
5. Création d’index
5.1 Index sur un champ
5.2 Choix du type d’index
5.3 Choix d’une classe d’opérateur
5.4 Utilisation d’une extension
Programmation coté client
1. Introduction
2. Pilote de connexion
3. Requêtes préparées
4. Curseurs
5. Récupération de résultats paginés sans curseur
Index
Sébastien LARDIÈRE
Après avoir été développeur web, formateur et consultant indépendant, puis administrateur de base de données PostgreSQL, Sébastien LARDIERE est aujourd'hui consultant PostgreSQL au sein de Loxodata, société de conseil et d'expertise PostgreSQL. Il fait preuve quotidiennement de toute son expertise reconnue dans ce domaine.