NSI (terminale) · Chapitre 11 · Application directe du cours
Problème — Modéliser une base « cinéma »
Bases de données : le modèle relationnel · niveau 2
Énoncé
Problème — Modéliser une base « cinéma ».
Un site souhaite gérer des films (titre, durée, année) et des réalisateurs (nom, nationalité). Un film a un unique réalisateur ; un réalisateur peut avoir réalisé plusieurs films. Proposer un schéma relationnel complet, puis le code SQL de création des tables.
Corrigé
On identifie deux entités : Realisateur et Film. L'association « un film a un réalisateur » est de type « plusieurs à un » : on place donc une clé étrangère dans la table Film.
CREATE TABLE Realisateur (
id INTEGER PRIMARY KEY,
nom TEXT NOT NULL,
nationalite TEXT
);
CREATE TABLE Film (
id INTEGER PRIMARY KEY,
titre TEXT NOT NULL,
duree INTEGER,
annee INTEGER,
id_realisateur INTEGER,
FOREIGN KEY (id_realisateur) REFERENCES Realisateur(id)
);
Ce schéma évite toute redondance : la nationalité d'un réalisateur n'est stockée qu'une fois, même s'il a réalisé dix films. Les trois contraintes d'intégrité sont respectées (clé primaire pour l'entité, types pour le domaine, clé étrangère pour la référence).
100 % gratuit
Essaie le suivant avec le tuteur
- L'exercice suivant avec le tuteur, sans compte : il guide pas à pas, sans donner la réponse
- 8 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le podcast et la vidéo du chapitre : 2 minutes d'écoute sans compte
Sans compte : le cours, le premier QCM, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.