Bases de données et SQL
Les données sont les nouvelles ressources naturelles. SQL est leur pelle.
Cours
Modèle relationnel
Une base de données relationnelle est constituée de tables. Chaque table a des colonnes (attributs) et des lignes (enregistrements).
Clé primaire : identifie de façon unique chaque ligne. Clé étrangère : référence une clé primaire d'une autre table.
SELECT
SELECT nom, age FROM eleves;
SELECT * FROM eleves WHERE age >= 17;
SELECT nom FROM eleves ORDER BY age DESC LIMIT 5;
SELECT classe, COUNT(*) FROM eleves GROUP BY classe;
Jointures
SELECT e.nom, c.titre
FROM eleves AS e
JOIN cours AS c ON e.classe = c.classe;
INSERT / UPDATE / DELETE
INSERT INTO eleves (nom, age) VALUES ('Alice', 17);
UPDATE eleves SET age = 18 WHERE nom = 'Alice';
DELETE FROM eleves WHERE age < 15;
Agrégations
- COUNT, SUM, AVG, MIN, MAX
- Souvent combinées avec GROUP BY
Méthodes
Construire une requête SELECT
- 1SELECT colonnes (ou *)
- 2FROM table(s)
- 3WHERE conditions de filtrage
- 4GROUP BY pour agrégations
- 5ORDER BY pour trier
- 6LIMIT pour borner
Astuces & pièges
Astuce de bg
Les opérations s'exécutent dans l'ordre : FROM → WHERE → GROUP BY → SELECT → ORDER BY → LIMIT. Penser dans cet ordre aide.
Piège à éviter
DELETE sans WHERE supprime TOUT. Faute classique qui ruine une carrière. Toujours tester avec SELECT d'abord.
"Little Bobby Tables" : un élève nommé Robert'); DROP TABLE eleves; -- a fait disparaître toute sa classe. Injection SQL, le drame.
Teste-toi
1.Pour récupérer toutes les colonnes :
2.DELETE FROM t; supprime :
3.Pour compter les lignes :