Cours SQL et MySQL · Module 11: Projet final

Le Magnum Opus - le défi de Callimaque

2 min de lecture
Dans cette leçon2

Bienvenue une dernière fois ! Regarde le chemin parcouru. Quand tu te tenais devant la Porte de la Bibliothèque, tu ne pouvais pas écrire un seul SELECT. Aujourd'hui, tu connais le filtrage (WHERE), le tri (ORDER BY), les jointures (JOIN), le regroupement (GROUP BY), les sous-requêtes, les index et les transactions. Je suis fier de toi.

Mais un vrai maître ne se contente pas de lire le catalogue - il le crée. Je place donc devant toi un dernier défi : tu vas concevoir ton propre petit système de bibliothèque.

Ce que nous allons construire ensemble

Dans ce lieu, nous allons revisiter tout l'art de la gestion des données, mais cette fois du côté de l'architecte :

  • Tu vas concevoir une nouvelle table et la relier à une table existante grâce à une clé étrangère.
  • Tu vas la remplir de données avec l'instruction INSERT.
  • Tu vas poser des questions avisées en joignant des tables et en regroupant des résultats.
  • Tu vas recourir aux sous-requêtes et à HAVING pour en tirer un savoir caché.

Clé étrangère - un bref rappel

Une clé étrangère (FOREIGN KEY) est un renvoi entre rayons. Elle pointe vers une colonne d'une autre table et garantit que la valeur correspond toujours à une ligne existante :

1CREATE TABLE recenzje (
2  id INT PRIMARY KEY AUTO_INCREMENT,
3  ksiazka_id INT,
4  tresc TEXT,
5  FOREIGN KEY (ksiazka_id) REFERENCES ksiazki(id)
6);

Ici, ksiazka_id pointe toujours vers un livre réel du rayon ksiazki. Grâce à cela, aucune critique « fantôme » ne pourra jamais exister - un avis sur un livre qui n'est pas là.

Prends une grande inspiration. Il est temps de créer quelque chose qui t'appartienne. LE TRÉSOR S'OUVRE À TOI !

Tu as repéré une erreur dans cette leçon ?

Teste tes connaissances

Réponds aux questions de cette leçon. Choisis une réponse pour voir tout de suite si elle est correcte.

  1. 1. À quoi sert une clé étrangère (FOREIGN KEY) dans la table recenzje ?

  2. 2. À quoi sert une clé primaire (PRIMARY KEY) dans une table ?

Tâches pratiques dans le jeu

  • Éditeur de code

    Écris une instruction CREATE TABLE qui crée la table recenzje avec les colonnes : id (INT, clé primaire, AUTO_INCREMENT), ksiazka_id (INT), tresc (TEXT) et ocena (INT). Ajoute une clé étrangère : la colonne ksiazka_id doit référencer la colonne id de la table ksiazki.

  • Éditeur de code

    Écris une instruction INSERT qui ajoute DEUX lignes à la table recenzje (colonnes ksiazka_id, tresc, ocena) : (1, 'Wspaniała lektura', 5) et (2, 'Trudna, ale wartościowa', 4).

  • Tri horizontal

    Ordonne sur une ligne le début de l'instruction qui crée un nouveau rayon ulubione :