Aperçu du sujet
Exercice 1 (6 points) Cet exercice porte sur les bases de données relationnelles et les requêtes SQL. Dans cet exercice, on pourra utiliser les clauses du langage SQL pour : • construire des requêtes d’interrogation à l’aide de , , (avec SELECT FROM WHERE les opérateurs logiques , ), ;
Exercice 1 (6 points) Cet exercice porte sur les bases de données relationnelles et les requêtes SQL. Dans cet exercice, on pourra utiliser les clauses du langage SQL pour : • construire des requêtes d’interrogation à l’aide de , , (avec SELECT FROM WHERE les opérateurs logiques , ), ; AND OR JOIN ... ON • construire des requêtes d’insertion et de mise à jour à l’aide de , UPDATE , ; INSERT DELETE • affiner les recherches à l’aide de , . DISTINCT ORDER BY Dans un schéma relationnel, on utilisera les conventions suivantes : • la clé primaire d’une relation est définie par son attribut souligné ; • les attributs précédés de # sont les clés étrangères. Le guitariste Slash possède une incroyable collection de guitares. Maud est une grande fan de Slash. Elle décide de faire un inventaire de la collection de guitares sous la forme d’une base de données relationnelle. Partie A Dans cette partie, Maud utilise la relation suivante : inventaire (id, marque, modele, annee, num_ser, prix) représente le numéro de série d’une guitare. Il est unique pour chaque num_ser guitare d’une même marque. Le est en euro. prix Voici un extrait de la table . inventaire inventaire id marque modele annee num_ser prix 1 Gibson Les Paul Goldtop 1956 @70562 100000 2 Gibson Les Paul Goldtop 1988 81738349 20000 3 Gibson Les Paul Standard 1959 @90663 250000 4 Gibson Les Paul Standard 1987 81757532 25000 5 Fender Telecaster 1952 000230 150000 6 Fender Telecaster 1965 81345673 10000 7 Fender Stratocaster 1956 001359 200000 8 Fender Stratocaster 1965 81757532 15000 25-NSIJ1ME1 Page : 2 / 17 1. Expliquer pourquoi l’attribut ne peut pas être une clé primaire de la num_ser relation . inventaire 2. Donner, sous forme de tableau, le résultat de la requête suivante appliquée à l’extrait de table précédent. SELECT marque, modele FROM inventaire WHERE annee = 1956 3. Écrire une requête SQL permettant d’obtenir toutes les années du modèle Les Paul Standard dans la collection. 4. Écrire une requête SQL permettant d’obtenir tous les modèles de guitares de la marque Gibson par ordre croissant de l’année dans la collection. 5. Maud a fait une erreur de saisie pour la guitare d’identifiant =1. L’année est id en réalité 1957. Écrire une requête SQL permettant de corriger cette erreur de saisie. Partie B Maud change de représentation pour l’inventaire de la collection. Dans cette