2 La maison de disques - Corrigé MEA
UML
MR graphique
MR textuel Disques (ND, titre)
Chansons (NC, titre, durée) Musiciens (NM, nom, nationalité) Jouer (#NC, #NM, fonction )
Contenir (#ND, piste, #NC) avec (#ND, #NC) probablement unique Valorisation
On précise pour chaque attribut s’il n’est pas obligatoire, s’il est unique, s’il est modifiable, si c’est un énuméré.
Dans cet exemple, les attributs sont tous obligatoires et non modifiables. Il n’y a pas d’unique.
Il y a un attribut énuméré.
Disques (ND, titre)
Chansons (NC, titre, durée) Musiciens (NM, nom, nationalité) enum
Jouer (#NC, #NM, fonction ) Contenir (#ND, piste, #NC)
Graphe des tables
Contenir Participer
ND NC NC NM
Disques Chansons Musiciens
Remplissage de tables excel
3 disques. 2 disques peuvent avoir le même titre.
Le disque 1 contient 3 chansons.
Le disque 2 contient 4 chansons dont 2 déjà dans le disque 1.
Le disque 3 contient 3 chansons.
8 chansons. 2 chansons peuvent avoir le même titre.
Des musiciens. 2 musiciens peuvent avoir le même nom.
On précise uniquement qui participent aux chansons c1, c2 et c6.
Soit la question : Titre et durée des disques enregistrés par Rachid TAHA depuis 2000
Graphe de la question
Le graphe de la question (ou GDF de la question) est un mixte entre le graphe des tables et le GDF : on part d’un graphe des tables et on ajoute les DF des attributs de la question :
Contenir Participer
ND NC NC NM
Disques Chansons Musiciens
ND Titre annee=2000 durée nom=Taha
Les attributs « S » sont les attributs pour le Select, donc les attributs en sortie de la question.
Les attributs « W » sont les attributs pour le Where, donc les attributs en entrée de la question.
On peut aussi écrire la restriction des attributs « W ».
Réponse SQL
Select D.ND, D.titre, sum(C.durée)
From disques D, chansons C, Participer P, musiciens M, Jouer J Where P.ND = D.ND
and P.NC=C.NC and J.NM = M.NM and J.NC=C.NC and D.année > 2000 and M.nom = « TAHA » Group by D.ND, D.titre