Exercice 1 · Bac Numérique et Sciences Informatiques Métropole Candidat libre 2021 (sujet 1)

Thème : Bases de données relationnelles, SGBD et langage SQL · Tiré du sujet Métropole Candidat libre 1 (2021)

Énoncé

Cet exercice porte sur les bases de données.

Dans cet exercice, on pourra utiliser les mots clés suivants du langage SQL:

SELECT, FROM, WHERE, JOIN, ON, INSERT INTO, VALUES, MIN, MAX, OR, AND.

Les fonctions d'agrégation MIN(propriete) et MAX(propriete) renvoient, respectivement, la plus petite et la plus grande valeur de l'attribut propriete pour les enregistrements sélectionnés.

Des acteurs ayant joué dans différentes pièces de théâtre sont recensés dans une base de données Theatre dont le schéma relationnel est donné ci-dessous:

• Piece ( idPiece, titre, langue)

• Acteur ( idActeur, nom, prenom, anneeNaiss)

• Role ( #idPiece, #idActeur, nomRole)

Dans ce schéma, les clés primaires sont soulignées et les clés étrangères sont précédées du symbole #.

L'attribut idPiece de la relation Role est une clé étrangère faisant référence à l'attribut idPiece de la relation Piece.

L'attribut idActeur de la relation Role est une clé étrangère faisant référence à l'attribut idActeur de la relation Acteur.

Tous les attributs dont le nom est préfixé par id sont des nombres entiers ainsi que l'attribut anneeNaiss. Les autres attributs sont des chaînes de caractères.

1.

Expliquer pourquoi il n'est pas possible d'insérer une entrée dans la relation Role si les relations Piece et Acteur sont vides.

2.

Dans la pièce « Le Tartuffe », l'acteur Micha Lescot a joué le rôle de Tartuffe.

L'identifiant de Micha Lescot est 389761 et celui de cette pièce est 46721.

Écrire une requête SQL permettant d'ajouter ce rôle dans la table (ou relation) Role.

3.

Expliquer ce que fait la requête SQL suivante.

UPDATE Piece

SET langue = "Anglais"

WHERE langue = "Américain" OR langue = "Britannique";

4.

Pour chacun des quatre items suivants, écrire une requête SQL permettant d'extraire les informations demandées.

Énoncé: Exercice 1 · Bac Numérique et Sciences Informatiques Métropole Candidat libre 2021 (sujet 1)

Corrigé

Corrigé proposé par AprenAI (non officiel)

1. Expliquer pourquoi il n'est pas possible d'insérer une entrée dans la relation Role si les relations Piece et Acteur sont vides.

Réponse : Les attributs idPiece et idActeur de la table Role sont des clés étrangères faisant référence respectivement aux clés primaires des relations Piece et Acteur. D'après la contrainte d'intégrité référentielle, une clé étrangère doit faire référence à une valeur existant dans la relation cible. Si Piece et Acteur sont vides, aucune référence valide ne peut exister.

2. Écrire une requête SQL permettant d'ajouter ce rôle dans la table (ou relation) Role.

Réponse : ```sql INSERT INTO Role (idPiece, idActeur, nomRole) VALUES (46721, 389761, 'Tartuffe'); ``` ```sql INSERT INTO Role VALUES (46721, 389761, 'Tartuffe'); ```

3. Expliquer ce que fait la requête SQL suivante.

Réponse : Cette requête met à jour la table Piece en modifiant la valeur de l'attribut langue à "Anglais" pour toutes les pièces dont la langue était initialement "Américain" ou "Britannique".

4. a. Le nom et prénom des artistes nés après 1990.

Réponse : ```sql SELECT nom, prenom FROM Acteur WHERE anneeNaiss > 1990; ```

Les réponses des 3 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 3 · Métropole 2 remplacement 2022 · Exercice 1 · Métropole Candidat libre 2021 (sujet 2) ›

Plus d’exercices de Bases de données relationnelles, SGBD et langage SQL