Exo bac C6.EB2

Cet exercice porte sur les bases de données et le langage SQL.

Un grand magasin de meubles propose à ses clients un large choix de meubles. Les informations correspondantes sont rangées dans une base de données composée de trois relations.

Voici le schéma de deux de ces relations :

Dans ce schéma :

La troisième relation est appelée Meubles et concerne les meubles du magasin.

Le tableau ci-dessous en présente un extrait :

id intitule prix stock description
62 'skap' 69.99 2 'Armoire blanche 3 portes'
63 'skap' 69.99 3 'Armoire noire 3 portes'
74 'stol' 39.99 10 'Chaise en bois avec tissu bleu'
98 'hylla' 99.99 0 'Bibliothèque 5 étages blanche'

1. Dans cette question, on s'intéresse au modèle relationnel.

1.a. Donner la caractéristique qu’un attribut doit avoir pour être choisi comme clé primaire.

1.b. Expliquer le rôle des deux clés étrangères de la relation Commandes.

1.c. Donner le schéma relationnel de la relation Meubles en précisant la clé primaire et les éventuelles clés étrangères.

2. En vous basant uniquement sur les données du tableau de la figure 1, donner le résultat de la requête suivante :

SELECT id, stock, description
FROM Meubles
WHERE intitule = 'skap';

3. Donner la requête SQL permettant d’afficher les noms et prénoms des clients habitant à Paris.

4. Le magasin vient de recevoir des meubles dont l’intitulé est 'hylla' et dont l’attribut id dans la relation Meubles vaut 98. Le stock de ces meubles est alors de 50.

Écrire la requête SQL qui permet de mettre à jour la base de données.

5. Le magasin vient d’ajouter à son catalogue un nouveau meuble dont les caractéristiques sont les suivantes :

id intitule prix stock description
65 'matta' 95.99 25 'Tapis vert à pois rouges'

Donner la requête SQL qui permet d’ajouter cet article à la relation Meubles.

6. Donner la requête SQL permettant de récupérer le nom et le prénom des différents clients qui ont passé une commande le 30 avril 2021.

On précise que, dans la relation Commandes, les dates sont des chaînes de caractères, par exemple '21/08/2002'.