Problème — Diagnostiquer une base mal conçue
Application directe du cours · niveau 3 (difficile) · NSI (terminale), chapitre 11 — Bases de données : le modèle relationnel
Énoncé
Problème — Diagnostiquer une base mal conçue.
Une boutique gère ses ventes dans une unique table :
| vente | produit | categorie | prix_unit | quantite |
|---|---|---|---|---|
| 1 | Stylo bleu | Papeterie | 2 | 3 |
| 2 | Stylo bleu | Papeterie | 2 | 1 |
| 3 | Cahier | Papeterie | 3 | 5 |
Repérer les défauts puis proposer un schéma corrigé.
Corrigé
Défauts constatés :
- Redondance : la catégorie et le prix du « Stylo bleu » sont répétés à chaque vente.
- Risque d'incohérence : si le prix du stylo change, il faut le corriger sur toutes les ventes, sinon les données se contredisent.
- Aucune entité « produit » n'est isolée alors qu'un produit est un objet à part entière.
On sépare les produits des ventes :
Chaque produit est désormais décrit une seule fois. Une vente référence un produit par sa clé étrangère id_produit. Toute modification du prix ou de la catégorie se fait en un seul endroit : la base gagne en cohérence et respecte les contraintes d'intégrité.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.