{MySQL}
rybba
-
Mouradif Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Mouradif Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai une petit difficulté avec un modèle relationnel:
Le voici:
Oeuvre (numO, nomO, duréeO, numC)
numO = clé primaire
numC = étrangère
Concert (numC, nomC, DateC, CodeL)
numC = clé prim
CodeL = étrangère
Lieu (codeL, nomL, NbPlaceL)
CodeL = clé prim
Question:
En fait, une même oeuvre peut être jouée dans differents concerts, il faut donc modifier le modèle afin de tenir compte de cette contrainte.
J'avoue, j'ai eu beau chercher, je ne trouve pas :(
Merci à celui qui m'éclairera ^^
PS: Si quelqu'un a vraiment du temps, j'ai 4 requetes à faire, pour vérifier si c'est bon :)
a) nom du concert (nom) concernant l'oeuvre "le beau danube bleu"
b) nombre de concerts joués pendant le festival
c) noms des concerts proposant + de 4 oeuvres
d) modifier la date du concert numero 148: la nouvelle date est le 18/06
Merci beaucoup!
J'ai une petit difficulté avec un modèle relationnel:
Le voici:
Oeuvre (numO, nomO, duréeO, numC)
numO = clé primaire
numC = étrangère
Concert (numC, nomC, DateC, CodeL)
numC = clé prim
CodeL = étrangère
Lieu (codeL, nomL, NbPlaceL)
CodeL = clé prim
Question:
En fait, une même oeuvre peut être jouée dans differents concerts, il faut donc modifier le modèle afin de tenir compte de cette contrainte.
J'avoue, j'ai eu beau chercher, je ne trouve pas :(
Merci à celui qui m'éclairera ^^
PS: Si quelqu'un a vraiment du temps, j'ai 4 requetes à faire, pour vérifier si c'est bon :)
a) nom du concert (nom) concernant l'oeuvre "le beau danube bleu"
b) nombre de concerts joués pendant le festival
c) noms des concerts proposant + de 4 oeuvres
d) modifier la date du concert numero 148: la nouvelle date est le 18/06
Merci beaucoup!
A voir également:
- {MySQL}
- Mysql community server - Télécharger - Bases de données
- Could not connect to mysql! please check your database settings! - Forum Redhat
- Mysql error 1 ✓ - Forum Réseaux sociaux
- Phpmyadmin a tenté de se connecter au serveur mysql, et le serveur a rejeté la connexion. merci de vérifier les valeurs de host, username et password dans la configuration et de s'assurer qu'elles correspondent aux informations fournies par l'administrateur du serveur mysql. ✓ - Forum PHP
- Access vs mysql - Forum Webmastering
5 réponses
Bonjour,
a - :
b- :
c - :
d - :
a - :
select nomC from Concert where numC in (seletc numC from Oeuvre where nomO = 'le beau danube bleu')
b- :
select * from Concert where DateC between 'date-debut-festival' and 'date-fin-festival'
c - :
select nomC from Concert where numC in (select numC from oeuvre having count(numC) >4)
d - :
update Concert set dateC = '18/06/2010' where numC = 148
Salut rybba,
Une oeuvre peut être jouées dans plusieurs concerts et je suppose qu'un concerts et composé de plusieurs oeuvres. Il faut créer une table qui fait la liaison entre Concerts et Oeuvres (que j'apellerais Interpretation)
ton modèle relationnel final devrait donc plutôt ressembler à ça :
Oeuvre (numO, nomO, duréeO)
Interpretation (#numO, #numC)
Concert (numC, nomC, DateC, #CodeL)
Lieu (CodeL, nomL, NbPlaceL)
Voilà un problème de résolu et compris j'espère...
en ce qui concerne tes requêtes. Celles de devMan devraient fonctionner mais si (comme je m'en doute) il s'agit d'un exercice à faire pour l'école (je me rappelle en avoir eu un qui lui ressemblait beaucoup), je devine que votre prof s'attend à voir des jointures dans les requêtes. Voici donc celles que je préconise :
a) nom du concert (nom) concernant l'oeuvre "le beau danube bleu"
b) nombre de concerts joués pendant le festival
c) noms des concerts proposant + de 4 oeuvres
d) modifier la date du concert numero 148: la nouvelle date est le 18/06
NB : certains profs exigent le ";" (point-virgule) à la fin de chaque requête.
Une oeuvre peut être jouées dans plusieurs concerts et je suppose qu'un concerts et composé de plusieurs oeuvres. Il faut créer une table qui fait la liaison entre Concerts et Oeuvres (que j'apellerais Interpretation)
ton modèle relationnel final devrait donc plutôt ressembler à ça :
Oeuvre (numO, nomO, duréeO)
Interpretation (#numO, #numC)
Concert (numC, nomC, DateC, #CodeL)
Lieu (CodeL, nomL, NbPlaceL)
Légende :
Souligné : Clé primaire
#Précédé d'un "#" : Clé étrangère
Voilà un problème de résolu et compris j'espère...
en ce qui concerne tes requêtes. Celles de devMan devraient fonctionner mais si (comme je m'en doute) il s'agit d'un exercice à faire pour l'école (je me rappelle en avoir eu un qui lui ressemblait beaucoup), je devine que votre prof s'attend à voir des jointures dans les requêtes. Voici donc celles que je préconise :
a) nom du concert (nom) concernant l'oeuvre "le beau danube bleu"
SELECT nomC FROM concert, interpretation, oeuvre WHERE concert.numC = interpretation.numC AND interpretation.numO = oeuvre.numO AND nomO = "le beau danube bleu";
b) nombre de concerts joués pendant le festival
SELECT COUNT(*) AS NbConcerts FROM concert;
c) noms des concerts proposant + de 4 oeuvres
SELECT nomC, COUNT(numO) AS NbOeuvres FROM Concert, Interpretation GROUP BY nomC HAVING NbOeuvres > 4;
d) modifier la date du concert numero 148: la nouvelle date est le 18/06
UPDATE concert SET DateC = 2010-06-18 WHERE numC = 148;
NB : certains profs exigent le ";" (point-virgule) à la fin de chaque requête.
Merci beaucoup Mouradif, merci aussi à DevMan même si c'était pas trop ce que je voulais car effectivement c'est pour un exercice à l'école.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question