Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel





télécharger 13.37 Kb.
titreCorrection du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel
date de publication05.07.2017
taille13.37 Kb.
typeDocumentos
e.20-bal.com > économie > Documentos

Université d’Orléans IAE M1 SM

Faculté de droit, économie, gestion 2004-2005

Correction du partiel de bases de données




Exercice 1 : Modèle entité-association et relationnel




Remarques mineures sur le MCD :

  1. La solution n’est évidemment pas unique. Aucun problème si vous avez géré les adresses comme des attributs à rajouter aux accompagnateurs et aux clients, si vous avez essayé de gérer les prix « standard » et « élevé » ou encore le payement des inscriptions – et que cette gestion reste raisonnable.

  2. L’aptitude des accompagnateurs à accompagner un voyage peut elle aussi être gérée différemment, il y a en effet redondance entre les qualifications et l’aspect expérience des accompagnateurs/difficulté du circuit.


Remarques majeures sur le MCD :

  1. Le voyage devait apparaître en tant qu’entité. D’après le troisième alinéa du sujet, on peut l’envisager comme association entre Date et Circuit. Cependant les clients s’inscrivent pour des voyages et on n’aurait pas pu associer l’entité Client à l’association Voyage.
    Une autre approche que certains ont tentée est d’avoir une entité Date et de faire une association ternaire correspond entre Date, Circuit et Voyage. Ceci pose un problème au niveau du passage au MLD : à un voyage correspond exactement une date et un circuit. Si vous faites une association ternaire cette contrainte ne sera pas prise en compte (en fait il y aurait une CIF dans une association ternaire, chose que vous n’avez jamais vue et qui vous aurait de toute façon conduit à retenir la modélisation ci-dessus).
    Enfin, précisons que cette association valait un point, sur les deux points prévus pour les associations. C’est normal puisque c’est l’association la plus importante.

  2. Un Client fait une inscription pour un Voyage – et non pas pour un Circuit. De la même façon, un Accompagnateur est affecté (accompagne) un Voyage et non pas un Circuit.



Modèle relationnel :

Circuit(numéro circuit, nom circuit, description, nbMax particip, difficulté)

Voyage(numéro voyage, nom voyage, prix, numéro circuit, date, numéro accompagnateur)

Client(numéro cli, nom cli, prénom cli, téléphone cli, numéro, rue, ville, code postal)

Accompagnateur(numéro acc, nom acc, prénom acc, téléphone acc, expérience, numéro, rue, ville, code postal)

Inscription(numéro voyage, numéro cli, statut)

Requiert(numéro circuit, descr qualif)

Possède(numéro acc, descr qualif)

Exercice 2 : requêtes

Requête 1


  • PROJECTION NumLicence
    (SELECTION Valeur<9,9 ET Epreuve=  ″100m masculin″ 
    (RESULTAT))



  • SELECT NumLicence
    FROM RESULTAT
    WHERE Valeur < 9.9
    AND Epreuve = ″100m masculin″;


Requête 2


  • PROJECTION Nom, Prenom
    (SELECTION Epreuve =  ″200m féminin″ 
    (ATHLETE NumLicence RESULTAT))



  • SELECT Nom, Prenom
    FROM ATHLETE, RESULTAT
    WHERE ATHLETE.NumLicence = RESULTAT.NumLicence
    AND Epreuve = ″200m féminin″;

Requête 3


Difficulté : il faut faire l’intersection entre celles qui ont gagné le 100m féminin et celles qui ont gagné le saut en longueur féminin. J’ai mis le NumLicence avant de faire l’intersection pour pas avoir des soucis avec les homonymes.

  • PROJECTION Nom
    (
    (PROJECTION Nom, NumLicence
    (SELECTION Epreuve =  ″100m féminin″ ET Rang = 1
    (ATHLETE NumLicence RESULTAT)))

    INTERSECTION

    (PROJECTION Nom, NumLicence
    (SELECTION Epreuve =  ″saut en longueur féminin″ ET Rang = 1
    (ATHLETE NumLicence RESULTAT)))
    )




  • SELECT Nom
    FROM ATHLETE, RESULTAT
    WHERE ATHLETE.NumLicence = RESULTAT.NumLicence
    AND Epreuve = ″100m feminin″ AND Rang = 1
    AND NumLicence IN
    (SELECT NumLicence FROM RESULTAT WHERE
    Epreuve=″saut en longueur féminin″ AND Rang = 1);

Requête 4


Difficulté : le pays de l’athlète n’est pas le pays du meeting ! Il faut utiliser deux fois la table FEDERATION.


  • PROJECTION Nom, Prenom, FED_ATHLETE.NomPays
    (SELECTION Epreuve =  ″1500m masculin″ ET FED_MEETING.NomPays =  ″Belgique″ ET Rang = 1 ET DateDebut>=#1/1/1995#
    (FEDERATION AS FED_ATHLETE) NumFed ATHLETE NumLicence RESULTAT NumMeeting MEETING NumFed (FEDERATION AS FED_MEETING))



  • La première requête, appelée MEETINGS_BELGIQUE, sélectionne les numéros des meetings ayant eu lieu en Belgique depuis le 1/1/95.

    SELECT NumMeeting
    FROM MEETING, FEDERATION
    WHERE MEETING.NumFed = FEDERATION.NumFed
    AND NomPays =  ″Belgique″ AND DateDebut>=#1/1/1995#;

    Il n’y a plus qu’à afficher les infos sur les athlètes ayant gagné le 1500m masculin dans l’un des meetings ci-dessus :

    SELECT Nom, Prenom, NomPays
    FROM ATHLETE, RESULTAT
    WHERE ATHLETE.NumLicence = RESULTAT.NumLicence
    AND Epreuve =  ″1500m masculin″ AND Rang = 1
    AND NumMeeting IN
    (SELECT NumMeeting FROM MEETINGS_BELGIQUE);

Requête 5


Attention à la jointure entre RESULTAT et RECORDDUMONDE, elle se fait sur le champ Epreuve.

  • PROJECTION NomMeeting
    (SELECTION Valeur = ValeurRecord 
    (MEETING NumMeeting RESULTAT Epreuve RECORDDUMONDE))



  • SELECT Nom, Prenom
    FROM MEETING, RESULTAT, RECORDDUMONDE
    WHERE Valeur = ValeurRecord 
    AND MEETING.NumMeeting = RESULTAT.NumMeeting
    AND RESULTAT.Epreuve = RECORDDUMONDE.Epreuve;



similaire:

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconExpert Bases de Données – Chef de Projet

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconExercice 2 (anabac foucher – correction p 86)

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconRecensement des données du 01/01 au 31/12 de l’exercice considéré

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconDuramaz, un système d’indicateurs de développement durable en Amazonie brésilienne
«durables» en Amazonie brésilienne. Chacune fait l’objet d’une étude détaillée combinant une analyse à partir de bases de données...

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconExercice 5 : La détermination du taux d’intérêt Hypothèses du modèle

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconMacroeconomie licence 2 janvier 2006 (2h) Exercice 1 : Modèle Classique (10 points)

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconA) Première manière (on «tape» dans les bases de données)
«geo» pour une comparaison avec les eu : pour un gain de temps «Tout sélectionner» 2 fois, puis on coche ue27 et us

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconRésumé : Assimilation de données économiques par stics pour l’enrichissement...

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconCorrection devoir ts4 : L’evolution du modele sovietique de 1953 aux annees 1970
«Khrouchtchev entamera la déstalinisation à partir de 1956» mais «Staline entama la déstalinisation à partir de 1956

Correction du partiel de bases de données Exercice 1 : Modèle entité-association et relationnel iconCh les investissements incorporels et corporels
«Un actif est un élément identifiable du patrimoine ayant une valeur économi­que positive pour l’entité, c’est-à-dire un élément...






Tous droits réservés. Copyright © 2016
contacts
e.20-bal.com