Exercice 3 · Bac Numérique et Sciences Informatiques Amérique du Nord 2022 (jour 2)
Thème : Bases de données relationnelles, SGBD et langage SQL · Tiré du sujet Jour 2 (2022)
Énoncé
Exercice 3 (4 points)
Cet exercice porte sur les bases de données relationnelles et le langage SQL.
Cet exercice utilise les mots du langage SQL suivants: SELECT, FROM, WHERE, JOIN ON, UPDATE, SET, DELETE, COUNT, AND, OR.
Une salle de cinéma propose un site Web à ses abonnés afin d'effectuer des réservations de séances en ligne. Deux tarifs sont proposés: plein et réduit (-16 ans, sénior +65 ans, étudiants, …). Le site est associé à une base de données dont le modèle relationnel contient les quatre relations décrites ci-dessous:
Un attribut souligné correspond à une clé primaire et un attribut précédé du symbole # à une clé étrangère.
Voici un extrait de quelques enregistrements des relations Film, Séance et Abonné:
idFilm
titre
réalisateur
durée
1
Le sens de la famille
Jean-Patrick Benes
90
2
Les croods 2
Joel Crawford
95
8
Black widow
Cate Shortland
134
…
Extrait de la relation Film, les durées sont en minutes.
idSéance
idFilm
date
heure
35
1
2021-10-11
21:00
737
8
2021-10-11
21:00
738
8
2021-10-13
16:15
…
Extrait de la relation Séance.
idAbonné
nom
prénom
1
Henry
Jean
jean.henry@envoi.fr
2
Jacquin
Morgane
jacquin.morgane@mail.com
13
Dupont
Charles
charles.dupont@envoi.fr
…
Extrait de la relation Abonné.
1. (a)
Définir le rôle d'une clé primaire.
1. (b)
Définir le rôle d'une clé étrangère.
1. (c)
Déterminer, en justifiant, si un abonné peut réserver plusieurs fois une même séance.
1. (d)
M. Charles Dupont réserve trois places au tarif plein et deux places au tarif réduit pour assister à la projection du film "Black widow" le 11 octobre 2021 à 21:00. À l'aide des extraits des relations donnés précédemment, recopier et compléter l'enregistrement correspondant dans la relation Réservation ci-dessous:
idAbonné
idSéance
nbPlaces_plein
nbPlaces_réduit
2. (a)
Parmi les trois requêtes SQL suivantes, recopier celle qui permet d'afficher le titre et le réalisateur des films de moins de 120 minutes.
2. (b)
En SQL, la fonction COUNT() permet de compter le nombre d'enregistrements dans une table. Exprimer en langage naturel la requête SQL suivante:
SELECT COUNT(*)
FROM Séance
WHERE date="2021-10-22" OR date="2021-10-23";
On remarquera que les dates apparaissent sous la forme "aaaa-mm-jj". Par exemple, le 11 octobre 2021 apparaît sous la forme "2021-10-11".
3. Écrire en SQL les requêtes permettant d'effectuer les tâches suivantes:
(a)
(b)
On remarquera que les heures apparaissent sous la forme "hh:mm".
4.
(a)
(b)
On souhaite écrire une requête SQL permettant de supprimer la séance dont l'attribut idSéance vaut 135. Déterminer la contrainte d'intégrité que pourrait violer cette requête.
(c)

Corrigé
Corrigé proposé par AprenAI (non officiel)
1. (a) Définir le rôle d'une clé primaire.
Réponse : Une clé primaire permet d'identifier de manière unique chaque enregistrement (ou n-uplet) d'une relation.
1. (b) Définir le rôle d'une clé étrangère.
Réponse : Une clé étrangère est un attribut d'une relation qui fait référence à la clé primaire d'une autre relation, assurant ainsi l'intégrité référentielle entre les tables.
1. (c) Déterminer, en justifiant, si un abonné peut réserver plusieurs fois une même séance.
Réponse : Non, un abonné ne peut pas réserver plusieurs fois une même séance car la clé primaire de la relation Réservation est le couple (#idAbonné, #idSéance).
1. (d) idAbonné dans la relation Réservation pour M. Charles Dupont
Réponse : 13
1. (d) idSéance dans la relation Réservation pour 'Black widow' le 11 octobre 2021 à 21:00
Réponse : 737
1. (d) nbPlaces_plein dans la relation Réservation
Réponse : 3
1. (d) nbPlaces_réduit dans la relation Réservation
Réponse : 2
Les réponses des 7 questions restantes et l’explication pas à pas sont réservées aux membres Premium. Premium
Résous-le ici : correction automatique, indices et corrigé détaillé.
‹ Exercice 1 · Amérique du Nord 2022 (jour 1) · Exercice 1 · Amérique du Nord 2021 (jour 1) ›