Conception d un Schéma Entité-Association Le modèle relationnel Corrigé Exercices - Série 4 Exercice 1 : Gestion d'un zoo AVS code adr tel fonction service pré naissance Employé -mari [0:12] salaires mois disjoint taux grade Gardien Chef Secteur 0:6 Choix Dirige affinité Surveillance Secteur jour heure Espèce Découpe Contient Appartient- sang -n Parenté Paternelle père Appartient- Groupe -décès mesures Parcelle No Groupe d individus intitulé bre Parenté Maternelle mère poids taille 1
Identifiants: L'identifiant de Choix est Gardien+Secteur (un gardien ne peut choisir deux fois le même secteur). A chaque heure de chaque jour donné, il y a un et un seul gardien par parcelle: les identifiants de Surveillance sont Parcelle+jour+heure et Gardien+jour+heure. Contraintes d'intégrité: La de naissance des employés doit être cohérente avec le jour actuel (disons au minimum 16 ans de différence). La fonction de chaque employé doit être cohérente avec son service. Pour un gardien donné, à un jour donné, toutes les parcelles qu'il surveille sont situées dans le même secteur, et il ne peut surveiller deux fois de suite (à deux heures successives) la même parcelle. Pour chaque gardien le bre d'occurrences de Choix le liant avec affinité ="oui" est limité à 3. De même pour ceux avec affinité = "non". Pour chaque secteur, les numéros de parcelles doivent être successifs (entre 1 et le bre de parcelles du secteur). Si elle existe, la de décès d'un individu est postérieure à la de naissance. Les s de naissance (et de décès éventuels) des parents (s'ils existent) de chaque individu sont cohérentes, respectivement antérieures et postérieures (avec des marges pour tenir compte du délai de fécondité et du temps de gestation), avec la de naissance de l'individu. Toutes les mesures d'un même individu doivent avoir des s différentes. Si le père et la mère sont de la même espèce, alors l individu doit aussi appartenir à la même espèce. Si un individu a une parenté paternelle alors il doit aussi avoir une parenté maternelle. 2
Traduire en schémas relationnels les diagrammes entité association suivants. Préciser les identifiants et les identifiants externes des relations. Exercice 2.1: Bibliothèque Livre(numéro, titre, éditeur, DateAchat-Jour, DateAchat-Mois, DateAchat-Année, état, [centre] 1 ) LivreAuteur(NuméroLivre, auteur, ordreauteur) NuméroLivre référence Livre.numéro Commentaire: ordreauteur est un attribut de entier. Il est ajouté car l'attribut auteur de Livre est de " de valeur". Abonné(Numéro,, pré, caution, rue, ville, NPA) Emprunt(NuméroLivre, NuméroAbonné, ordreemprunt, DeJour, DeMois, DeAnnée, [DrJour], [DrMois], [DrAnnée]) NuméroLivre référence Livre.numéro NuméroAbonné référence Abonné.numéro Commentaire: ordreemprunt est un attribut de entier. Il est ajouté car le rôle entre Emprunt et Livre est de " de valeur". Exercice 2.2: Editeur Auteur(, pré, [pseudonyme]) Livre(no-ISBN, titre) LivrePrixLittéraire(no-ISBN, Prix-, Prix-année) no-isbn référence Livre.no-ISBN Edition(no-ISBN, numéro, année, nb-exempl, prix-vente) no-isbn référence Livre.no-ISBN Librairie(, adresse-rue, adresse-ville, adresse-npa) Commande(no-ISBN, numéro, Librairie, qté, -Jour, -Mois, -Année) no-isbn référence Edition.no-ISBN numéro référence Edition.numéro Librairie référence Librairie. Commentaire: On a mis l'attribut dans l'identifiant car on considère que la même librairie peut commander plusieurs fois le même livre mais à des s différentes. Droits(, no-isbn, année, ) référence Auteur. no-isbn référence Livre.no-ISBN 1 Les crochets, [ et ], signalent les attributs facultatifs qui peuvent prendre la valeur nulle; les autres attributs sont obligatoires. 3
Exercice 2.3: Les courses de chevaux, version 1 num cote place à l arrivée chevaux-inscrits désordre rapports ordre Course pari gain somme num-cheval Course (,, gain) ChevauxInscrits (Course,,, num, cote, [place-arrivée]) (Course + ) REFERENCE Course Pari (N pari, Course,,, somme) (Course + ) REFERENCE Course Commentaire: le d'entité Pari n'a pas d'identifiant. En effet, il peut exister plusieurs paris de même et qui portent sur les mêmes chevaux. En relationnel, il faut donc introduire un identifiant. La solution retenue ici est d'ajouter un attribut, N Pari, qui, pour chaque course, numérote les paris de cette course. PariChevaux (N pari, Course,, numcheval, place) (Course + + N pari) REFERENCE Pari Rapports (Course,,, -ordre, -désordre) (Course + ) REFERENCE Course Les courses de chevaux, version 2 désordre ordre rapports gain num cote place-arrivée num Course Participe Cheval Concerne Pari Contient somme Course (,, gain) Cheval (num) Participe (Course,, numcheval, num, cote, [place-arrivée]) (Course + ) REFERENCE Course 4
numcheval REFERENCE Cheval Pari (N pari, Course,,, somme) (Course + ) REFERENCE Course Commentaire: ici on a introduit un attribut, N Pari, qui numérote tous les paris quelle que soit la course. Contient (N pari, Cheval, place) N pari REFERENCE Pari Cheval REFERENCE Cheval CourseRapport (Course,,, -ordre, -désordre) (Course + ) REFERENCE Course Exercice 2.4: Aéroport Type (Nom, constructeur, Puissance, Nbplaces) Mécanicien (Nom, Adresse,Téléphone) Pilote (Nom,Adresse,#tel,#brevet) Propriétaire (Nom,Adresse,#tel,Catégorie) Avion (Immatriculation, Date-achat, Nom-propriétaire,Nom-) -propriétaire référence Propriétaire.Nom - référence Type. Habilitation (Mécanicien, Type) Mécanicien référence Mécanicien.Nom Type référence un Type.Nom Habilité (Pilote, Type,Nbvols) Pilote référence Pilote.Nom Type référence un Type.Nom Intervention (Avion, Date, Réparateur, Vérificateur, Objet, Durée) Avion référence Avion.Immatriculation Réparateur référence Mécanicien.Nom Vérificateur référence Mécanicien.Nom Exercice 2.5: Personnel Service(Nom, numérocadre) numérocadre référence Cadre.numéroCadre ServiceLocal(NomService, Local) NomService référence Service.Nom Personnel(numéro,, pré, salaire, adresse, -banque, -agence, #compte, NomService) NomService référence Service.Nom Technicien(numéroTechnicien, heures-supp) numérotechnicien référence Personnel.numéro TechnicienMachine(numéroTechnicien, machine) numérotechnicien référence Technicien.numéroTechnicien 5
Administratif(numéroAdministratif, heures-supp) numéroadministratif référence Personnel.numéro Cadre(numéroCadre, bureau, #poste) numérocadre référence Personnel.numéro EmployéPar(numéroAdministratif, numérocadre) numéroadministratif référence Administratif.numéroAdministratif numérocadre référence Cadre.numéroCadre Exercice 2.6: Généalogie, version 1 naissance décès mère femme Parents Mariage père sexe pré mari divorce (N,, sexe, DateNais, LieuNais, [DateDécès, LieuDécès], [Mère, Père]) Mère REFERENCE Père REFERENCE Contraintes d'intégrité: Les deux attributs, Mère et Père, ont soit tous les deux une valeur, soit aucun des deux n'a de valeur. Les deux attributs, DateDécès et LieuDécès, ont soit tous les deux une valeur, soit aucun des deux n'a de valeur. Pré (N individu, N pré, pré) N individu REFERENCE Contrainte d'intégrité: Pour chaque valeur de N individu, les valeurs de N pré constituent une suite d'entiers sans trou: <1, 2, 3, >. Mariage (mari, femme,,, [-divorce]) mrai REFERENCE femme REFERENCE 6
Généalogie, version 2 Femme décès naissance Mariage partition Parents divorce pré Homme (N,, DateNais, LieuNais, [DateDécès, LieuDécès], [Mère, Père]) Mère REFERENCE Femme Père REFERENCE Homme Contraintes d'intégrité: Les deux attributs, Mère et Père, ont soit tous les deux une valeur, soit aucun des deux n'a de valeur. Les deux attributs, DateDécès et LieuDécès, ont soit tous les deux une valeur, soit aucun des deux n'a de valeur. Pré (N individu, N pré, pré) N individu REFERENCE Contrainte d'intégrité: Pour chaque valeur de N individu, les valeurs de N pré constituent une suite d'entiers sans trou: <1, 2, 3, >. Homme (N ) N REFERENCE Femme (N ) N REFERENCE Mariage (homme, femme,,, [-divorce]) homme REFERENCE Homme femme REFERENCE Femme Contrainte d'intégrité supplémentaire par rapport à celles définies pour le schéma entité association: Pour tout tuple de, il existe un tuple de même numéro soit dans Homme, soit dans Femme. 7