Chapitre 4.2.2
SQL
Pour manipuler une base de données relationnelle, nous utilisons le Structured Query Language.
Le SQL, prononcé S.Q.L et anciennement sequel, se veut un langage naturel proche de l'Anglais.
Il permet très facilement d'écrire des requêtes pour réaliser les 4 opérations de base du traitement de données : création, lecture, mise à jour, suppression.
Création
Reprenons la table "chapitre" vue dans le chapitre précédent :
| identifiant | titre | date_publication | contenu |
|---|---|---|---|
| frontend | Chapitre 2 - Front-end | 2023-09-10 | Le front-end, c'est tout le code... |
| backend | Chapitre 3 - Back-end | 2024-01-05 | Nous avons précédemment... |
Pour insérer une nouvelle ligne, nous utilisons la syntaxe INSERT :
INSERT INTO chapitre (identifiant, titre, date_publication, contenu)
VALUES ('sql', 'Chapitre 7 - SQL', '2025-04-26', 'Pour manipuler une base...')
Lecture
Tout d'abord, il faut sélectionner les colonnes utiles à notre cas d'utilisation. Supposons qu'on soit en train de créer le sommaire de ce guide, nous voulons simplement afficher le titre des chapitres.
SELECT titre FROM chapitre
Cette requête va bêtement sortir les titres de tous les articles dans l'ordre de leur insertion dans la table.
Pour affiner la recherche et personnaliser le résultat, on peut ajouter des clauses.
Les plus couramment utilisées sont :
- WHERE : Filtre le résultat selon des critères.
- ORDER BY : Trie le résultat.
- LIMIT : Limite le nombre de lignes retournées.
Pour remonter les titres des 5 derniers chapitres écrits en 2025, du plus récent au plus ancien :
SELECT
titre
FROM
chapitre
WHERE
date_publication > '2025-01-01'
ORDER BY
date_publication DESC
LIMIT 5
Mise à jour
Supposons que nous voulons corriger une faute d'orthographe dans le titre du chapitre :
UPDATE
chapitre
SET
titre = 'Chapitre 7 - SQL sans la faute'
WHERE
identifiant = 'sql'
Suppression
Nous voulons supprimer tous les chapitres plus vieux que 2025 :
DELETE FROM chapitre WHERE date_publication < '2025-01-01'
Ces 4 opérations forment ce qu'on appelle le CRUD (Create, Read, Update, Delete).
SQL est un véritable langage de programmation grâce auquel on peut gérer des systèmes de données avancés et optimisés.
Les requêtes basiques que nous venons de voir répondent cependant à 90% des besoins quotidiens.
