Université Cadi Ayyad -Marrakech
Ecole Supérieure de Technologie – Safi
Département Informatique
TP N°4
Soit le schéma relationnel de la base de données « Gestion_Cinema» :
Film (IdFilm, Titre, Annee, Score,#IdRealisateur);
Acteur (IdActeur, Nom);
Distribution (#IdFilm, #IdActeur, Rang);
Realisateur (IdRealisateur, Nom).
NB :
Un acteur peut jouer un rôle dans 0 ou plusieurs films et un film a 1 ou plusieurs acteurs dans sa distribution ;
L'attribut score désigne la moyenne des votes pour un film ;
L'attribut Rang indique le statut de l'acteur dans le film (rang=1 indique que l'acteur est la vedette du film).
Un script SQL (fichier « tp_4.sql ») pour la création et le remplissage des tables vous sera fourni.
Questions:
Ecrire en langage SQL des requêtes pour:
1. Créer la base de données que vous allez nommer selon votre Filière et votre Groupe
(Exemple : TP4_GI_G1), puis importer dans cette BD le fichier « tp_4.sql » moyennant
le logiciel MySQL Workbench (Allez Dans la barre de menus: cliquer sur File →
Open SQL Script → Parcourir le fichier puis cliquer sur Ouvrir) ;
2. Afficher la liste des films (id, titre et annee) triée par titre ;
3. Afficher la liste des films avec un score supérieur ou égal à 9 ;
4. Afficher le nom des films, l’année et le score augmenté de 100 ;
5. Afficher le nom des films ayant 'the' dans leur titre ;
6. Afficher le nom des vedettes du film ayant l'id 11 ;
7. Afficher le nom des réalisateurs de films sortis avant 1970 et dont leur titre se termine par ‘n’ ;
8. Quels sont les vedettes des films sortis en 2000 ? On veut l'id et le nom triés par nom ;
9. Afficher le film (id, titre) avec le plus haut score ;
10. Afficher le nombre total de films dirigés par le réalisateur d'id 11 ;
11. Afficher la liste des noms de réalisateurs, dans l'ordre alphabétique. Pour chaque
réalisateur, afficher son nom et le nombre de films réalisés ;
12. Pour chaque film, afficher son id, son titre et son nombre total d'acteurs ;
13. Afficher les acteurs (id et nom) qui ont joué dans plus que 5 films ;
14. Afficher les identifiants et les titres des films ayant un seul acteur dans leur
distribution;
15. Afficher les acteurs (id et nom) qui n’ont jamais été joués dans des films ;
16. Quels sont les acteurs jouant dans des films avec au moins trois rangs différents.
Afficher leur id et leur nom;
17. Quels sont les réalisateurs (id et nom) qui ont dirigé le plus grand nombre de films ?
18. Créez une vue V_Film_1999 qui affiche les films sortis en 1999 en utilisant les alias
(film, intitule, date, moy_votes,realisateur) pour les colonnes de la table Film;
19. Formuler les requêtes des questions de 2 à 5 en utilisant la vue V_Film_1999 ;
20. Créez une vue V_Film_Realisateur qui affiche les films et leur réalisateurs ;
21. Essayer d’insérer une ligne dans V_Film_1999, que remarquez-vous?
22. Essayer d’insérer une ligne dans V_Film_Realisateur, que remarquez-vous?
23. Créez un nouvel utilisateur que vous allez nommer ‘votreNom’ en attribuant un mot de passe;
24. Donner le droit d’affichage des vues V_Film_1999 et V_Film_Realisateur à votre utilisateur ;
25. Connectez-vous en tant que ‘votre nom’, afficher la liste des BD, sélectionner la BD
TP4_GI_Votre_groupe puis afficher la liste des tables ;
26. Essayer d’insérer une ligne dans V_Film_1999, que remarquez-vous?
27. Retirer les droits de l’utilisateur ‘votre nom’ sur la vue V_Film_1999.
Page 1 sur 1 Pr. A.CHEKRY