You are on page 1of 14
Université Badji Mokhtar Ma 2015 Faculté des sciences de l’ingénieur Département d’informatique EMD Module BDD 2LMD Durée 1h30, Documents non autorisés Exol : (3 points) Soit RI (A.B,C,D.E.F) une relation avec ensemble des dépendances suivantes : ABDC,DE ; BOC; DOE; FIB; FIC a. Donner le graphe minimum des dépendances. Quelle est la clé de R1? b. Proposer une décomposition en 3°" forme normale de Ri. Soit la relation Si date-sinistre, montant-dégat, NSS-conducteur, nom-Cond, prénom-Cond, part-respensabilité-cond) tre (Num-sinistre, Imm-vehicule, modél-vehi, ann-circulation, NSS-client, nom, prénom, adresse. Modélisant la gestion des sinistres (accidents) d’une compagnie d’assurances : Les clients sont possesscurs d'un ou plusieurs véhicules actuellement assurés. Chaque client est identifié par sor numéro NSS et posséde un nom et prénom et une adresse. Chaque véhic le est identifié par son nuntore immatriculation et posséde un modéle et une année de mise en circulation. Chaque véhicule a fait objet d'un certains nombres de sinistres (accidents). Chaque sinistre est numéroté et posséde ane date, le nom et Je numéro NSS du conducteur, le montant des dégats ot la part de responsabilité du condueteur. Ce qui est & noter est que le conducteu peut étre différent du propriétaire du véhicule. Questions : 1) donner les dépendances fonctionnelles de cette description, 2) résoudre le probléme des attributs multi-valués (LFN) 3) donner le Graphe minimum des DF. Quelle est la elé de cette relation? 44) décomposer la relation Sinistre en relations sans redondances (3'** forme 1 ormale) Probléme : (12 points) Soit la base de données relationnelle de gestion des notes des étudiants : ctudiant (qumEtud, NSS, nomEtud, prénomEtud, dateNaiss,Sexe, Département*, cy le) cycle € {L.1,L2,L3, MLM2} enseignant (aumEns, NSS, nomEns, grade, département*) grade prend ces valeurs «ans {« A», «MA», «CC >} Cours (qumCours, Intitulé, numEns, eycle, departement*) cycle € {L1,L2,L3, MI. M2} Notes (NumEtud, NumCoursNote) département (numDep,Libellé-Dep) 1) Kerire en LDD de SQL les commandes permettant de créer ces relati ms en prenant soin @indiquer le contraintes dintégrté (les clés primaires, les clés secondaires, les clés étrangéres, les contraintes sur Ic valeurs ... ) 2), Soient les requétes suivantes > (/ £4) Quels sont les enseignants qui enseignent des cours dans des départements différents de Ie département d'origine (auquel ils sont affectés) (/ +2) donner les noms et prénoms des étudiants avec leurs notes dans le c ours base de données ” c) donner la liste des étudiants inscrits en L3 et qui ont eu tous les mo jules v d) donner Je nombre d’étudiants par département Y +9 donner les noms des enseignants qui n’ont jamais donner de cours 3DD Ecrire on algébre relationnelle les requétes a), b), c), €) Ferire en SQL les requétes a), 6), d), ¢) Bon couras NB : pour vous retrouver dans les requétes procéder par étapes Goprethen 6) Roo war Exon . a) RSC ~» AQ sc OF eB a enbever b* RoC , fre © soot a ee ; « Foc " A ae e1( 48, d) a (y > ») Dearpesfe- (0, ) . Fn veh whe ay MAS. Zee 6) £6 DE: NSS Bee __slrarm , preles owe oe) ‘dale “Yalu, oe Pte Ge italt ons Linn Velo , Was Unable oleae a) Num - § Siweakae ; rn eke Sik, Qentek- deper ; pavt- udp NS3- Gedetlene Rowe 2 debe doe pitnan ~Lrskae ce (\() Atle rleatt Vnkbvebt : a un how pbe 4 ibn? JelcLe > (Land Valente nil Beeck ene ET nw Yell | eS) Tobe Ti ecko aie frh Sens Nop) ?) insta Vee (. Denn elven, MO z . (Leait Veld : nce Cr lle A) NSS- lew oS J a han ee proto J) ho pei eae Toy vetel pike | J. SY \ ee oe ee ct deb - Lael a cme és jeans nace But eS a pathos] fo of AZ () we. Bat ( usher, Yelcioks (Tm vert vel OS, put Arn _ Gre bobs: Felt JD Va velact (ME beh, Tome : oe Cute (ler tds | NSS —SoesbeBer ham Come praten = Cote syoman (cess e =] @ a8 Sima _Simale Sh veh Wis Geller - ] Tak Seen dS =) Ty aetheH) 5 Mss - Condudhon . (9 ClEATE Tele stpocknet ( — 4 Nw Bep clac(u) pomery ay eas) LAME Dp yattwrar(t) | : : E(epte Whe & ladiouh ( _ Nu Cte CHAC( AU) penerg Key, Qe) Ns Chird (Ie) UNIQUE, oe) UAcH Ac( ts} vot Nuc, yacunne Oe} MoT AK , Yam Clot Pre tled dot Naas Dob ) Uae a EP) Aire camels) clth do LEE T S Depocten er CHAC(&) fe goes dip ead pyres one l)) by Ain cHRLCY) check af) eo eae aoe 3 Can (A) Check 4% yay ve Ge b ) we & difohaced CHAI (4) Referee ga teer ) » kee cfeate Tele Not ( NuGkd CHAe (At) (efecmts Eldianty % Nan Cons Chine CY) Wferants Cor EW Not Tu leper check befucen ‘@ aud lo, oy wor Ling (Ran Ele, bln Coes) J N N cLeaTe Tole Guu (: Natoma CHE EG) Pry * vy 6) Sutella yaccamnc( Fe) WoT ay Ne Gas CHAE (I) Rifeems Ee thr Hf er N= yenre hoch om ‘us! “fia n te CHAT (4) Me femes | Sopdet VED ; © Ae QiLo he nek& take, +. 9) Encd = % nmenss NEM | degockets Per) - fi Foratare Bwem coe The al’ ie he +) @ depot + dep ) {ow Dol (Es ss) 0 Nweid eehs / ea 2 Th Gone Raat dedanses” e) ~~ tea Set! ue Ga) & pa) g g qin TT yum Cowes ( OF cigue = Le ( tows} ) ( Gare (Net ES i 3. Rr / ey ity a Tree te, prvame it (cum ><{ r Y 6 cae : ( Fouad | E Srp) apt) Ry My | ope ( Joe a ( Ape ub | Spat (Gp Fre [Torn Tans PM us : pals wee (Gr re (i ‘ar ' i Lt { Necotae DL (1. (See) Oe ms Cea wee wt ’ tly rpetenr( tent be (45 CCesne Toes) Ne Crlowd Gares” By. @ by Ver Ca PO / ? Tt Tower Q = > (lu = Ws Jo \ 3@at pO 5 dha Lewin Sar © im 2 Tys [ Gomi a buh tn clos’ Sr ba Pani Pe ae Tae (Spt Pom, Peleg ese es Ge TT Te Row Goat yo CD wpa rome none a0 \b E ae TJ oneur poe ) ue) 6) Jo Co Ruomnnge cf Toitebine Rerum oe BIG ( Jones 1 ded po wells Om rwerepe + tows Ly attuhebs Webra: =) Jomlen Mebulk 2 © Rnem——ape de tae Le Bball de Ce HAG a = he Toinkne - floc aver — Teiataw velirrll N (xs: NGA, Neng Nom V8, Prevrn ys prthony 2 Jouenr = Bye: Cpr) Jonene 1 _ [Get bo sq deer > PIR Weber oC Nabinlh= Mebll t Ps) Tele Torhkin gabe ee Voer 1s ol(u7ima8 Mon y Mn pr, pees rene pt Apes kp , poboneh Gs Nobel k 1) Joven Th. were Se ee 6 tobnatvs fe YO YF preberld- NI #NT4 Z y) ) Fonte b (wr + =o WT. NTS, Meme Mwy, pray pemyt Spe oe Nolrvol te Nara. \ : pepe CR, fa & Pa NW UG ave | C ene WMG and [ lin JTowcast \ IPR eines 2b ube ae } \ hey [s \ is } \ jG wiht Cl t a Te fom | premenyy Toccow (a2 2 Ny pedank 7, ‘ (Herter Smal Yat x Pont Po Bx] Fase) . urgaghs WT betes a >) (2/, «) 2 &eMy, («. at Ales a a “Ye hae ees gyn F bshing Toys a Ra pe “He (oars ee Ne ut 2 NT Ow Re. ¢ Joncme 2 I ones @ ce sgn) QP Ceo ee 2)ek Nowe 2 FE shes sou gene ay tome ions PQ borcnei de Clad Mi occr ok dulrew cow DVirwWitk creuve Ua : gr Sparovnh Le 1 Tour nei et Fda sheng Reade at ve Tys ce ( Sprsenns >< a) ), av 2 Tus ( CunTorenes [See wri nomTypeMat est déduite (transitive), on félimine. (0,5 pt) ae — area L. snomTypeMat as 3) PourV’identifiant de la relation ‘Ecole’, on prend les clés concaténées suivantes: (numGroup, codMatiére, codProf, numStagiaire, dateNotation) 0,75 pt Crest I'ensemble minimum qui détermine tous les attributs de la relation ‘Ecole’ 4) Normalisation : FN ok car la relation école posséde un identifiant et il n’existe pas d’attributs multi-valués 2FN non ok chaque attribut doit dépendre pleinement de la clé. Or, nous avons a) nomMat dépend seulement d'une partie de la clé & savoir codMatiére (partie de la clé): codMatitre >nomMat, coef 0,25 pt b) nomStag, pnomStag et numGroup dépendent seulement de numStagiaire ‘numStagiaire->nomStag, pnomstag, numGroup 0,25 pt ¢)_nomProf, pnomPro dépendent d'une partie de la clé codProf 0,25 pt codProf>nomProf, pnomProf d) note dépend aussi d’une partie de la clé numStagiaire, codMatiére, dateNotation_0,25 pt numStagiaire, codMatigre, dateNotation> note e) codProf dépend d’une partie de la clé numGroup, codMatiére 0,25 pt numGroup, codMatiére>codProf ‘On décompose donc en 2FN et on aura : Matiére (codMatire, nomMat, coef, codTypeMat, nomTypeMat) 0,25 pt Stagiaire (numStagiaire, nomStag, pnomStag, numGroup*) 3FN OK 0,25 pt Professeur (codProf, nomProf, pnomProf) 3FN OK 0,25 pt Notation (numStagiaire, codMatiére, dateNotation, note) 3FN OK 0,25 pt Enseigner (numGroup, codMatiére, codProf) 3FN OK 0,25 pt 3FN (toutes les DFs doivent dépendrent de la clé) : non ok pour la relation ‘Matiére’ en effet : 0,5 pt La DF codTypeMat->nomTypeMat la source ne fait pas partie de la clé. Pour rendre la relation matiére en 3FN on décompose la relation ‘Matiére’ comme suit : Matidre2 (codMatiére, nomMat, coef, codTypeMat*) 0,25 pt TypeMatiére (codTypeMat, nomTypeMat) 0,25 pt Remarque : une décomposition directe en 3FN sans faute (clé primaire soulignée) mais en ne donnant pas d’explication sera pénalisée par 1.5pt au total pour cette question ’étudiant aura 2/3,5) Probleme : Gc© 2) LDD: Comme les tables se font références mutuellemet, certaines tables verront les attributs clé étrangéres créés aprés la création des tables parents. On utilisera donc la commande ALTER TABLE ADD CONSTRAINTS... Cependant on acceptera la solution des étudiants avec une pénalité de | point, On acceptera aussi bien les contraintes en ligne que les contraintes nommées. _. CREATE TABLE DEPARTEMENT (NUM-DEPARTEMENT NUMBER (3), NOM-DEPARTEMENT VARCHAR (20) NOT NULL, VILLE VARCHAR(15) NOT NULL, MATRICULE-CHEF-DEPART CHAR(9), // References employé (matricule) O)Z5 pt (acceptée avec 0.5 de pénalité, solution avce alter table omise ****) _ 4. CONSTRAINT PK_DEP PRIMARY KEY (NUM-DPARTEMENT)O,5 pt) 7 CREATE TABLE EMPLOYE (MATRICULE CHAR(9), NSS CHAR(15), NOMEMP VARCHAR (20) NOT NULL, PRENOM VARCHAR (20) NOT NULL, SEXE ENOM('M’,‘E’) , DATE-NAISS DATE, x SALAIRE NUMBER (6), MATRICULE-SUPERVISEUR CHAR(9), //References employé (matricule) Py25 pt (acceptée avec 0,5 de pénalité solution avec alter table omise****) “ NUM-DEPARTEMENT NOMBER (3) , CONSTRAINT PK _EMPLOYE PRIMARY KEY (MATRICULE), 0,5 pt CONSTRAINT FK_EMP_NUMDEP_DEP FOREIGN KEY NUM-DEPARTEMENT REFERENCES DEPARTEMEMT (NUM-DAPARTEMENT) ON DELETE SET NULL ON UPDATE CASCADE, 0,5 pt CONSTRAINT UN_NSS UNIQUE(NSS) 0,5 pt); ‘****ALTER TABLE EMPLOYE ADD CONSTRAINT FK_EMPI_MATSUP_EMPL FOREIGN KEY MATRICULE- SUPERVISEUR REFERENCES EMPLOYE(MATRICULE)ON DELETE SET NULL, ON UPDATE CASCADE; 0,75 pt (solution idéale) ****ALTER TABLE DEPARTEMENT ADD CONSTRAINT FK_DEP_MATCHEFDEP_EMPL FOREIGN KEY MATRICULE-CHEF-DEPART REFERENCES EMPLOYE(MATRICULE)ON DELETE SET NULL ON UPDATE CASCADE; 0,75 pt (solution idéale) CREATE TABLE PROJET (NUMPROJ CHAR(15), NOM-PROJET VARCHAR (15)NOT NULL, VILLE VARCHAR (15)NOT NULL, NUM-DEPARTEMENT NUMBER (3) REFERENECES DEPARTEMEMT (NUM-DEPARTEMEMT) ON DELETE SET NULL ON UPDATE CASCADE, 0,5 pt PRIMARY KEY (NUMPROJ) 0,5 pt) CREATE TABLE TRAVAILLE-SUR-PROJET (MATRICULE CHAR(9)REFERENCES ENPLOYE ON DELETE CASCADE ON UPDATE CASCADE, 0,5 pt NUM-PROJETINT(3) REFERENCES PROJET ON DELELE CASCADE ON UPDATE CASCADE, 0, 5pt NBRE-HEURE NUMBER (3), PRIMARY KEY (MATRICULE,NUM-PROJET) 0,5); Remarque : les réponses sans ON di de 0 otal de la question. on update seront 2) En régle générale, les tables sont créées dans un ordre qui privilégie d’abords la création des tables parents ensuite des tables enfants. Dans le cas oil les tables se font référence mutuellement telles que les tables ‘employés et département, on différera la création des clés étrangéres aprés la création des tables en utilisant la commande alter table qui ajoute les contraintes des clés étrangéres. (voir corrigé question 1) 0,5 pt. Se 2Ith Algebre relationnelle : a) Donner les noms des employés ayant comme superviseur l'employé « Bouguerra ». R1= Tnatricote (6NoMEMP-‘Bouguers)EMPLOYE —0.25pt R2=R1L EMPLOYE 0,5 pt MaTRicuLe = MOTRICULESUPERVISELR R3=Txomee R2 0,25 pt Tisosexe EMPLOYE [><] (usa (Oxon tosgerssEMPLOYE)) ©) Donner les Matricules des employés qui sont dans tous les projets situés a « ALGER ». ieerroXGvante~arcer PROJET 0,25 pt R2=Tiwanucuneavuamnos(TRAVAIL-SUR-PROJET) 0.25 pt R3=R2=RI O0.5pt Timarricuve,wumprox( TRAV AIL-SUR-PROJET) + Tiyuxerox(Gvite~arcer PROJET SQL

You might also like