Click here to download.
Transcription
Click here to download.
UNIVERSITÉ DE LA ROCHELLE TP BASES DE DONNEES Département Informatique Master IMA M. Eboueya & L. Checroun Durée 3 h, La correction est, entre autres, basée sur le fait que chacune de vos réponses soit: { Claire, c'est-à-dire lisible et compréhensible pour le lecteur; { Précise, c'est-à-dire exacte et sans erreur; { Concise, c'est-à-dire qu'il n'y ait pas d'élément superflu; { Complets, c'est-à-dire que tous les éléments requis sont présents. 1. Interprétation de schémas entité/association 1.1. Centre médical (1 pt) On vous donne le schémas E/A ci-dessous représentant des visites dans un centre médical. Répondez aux questions suivantes en fonction des caractéristiques de ce schéma (i.e.: indiquez si la situation décrite est représentable, indépendamment de sa vraisemblance et justifiez votre réponse). Q11_A : Un patient peut-il aller à plusieurs consultations ? …………………………………………………………………………………………….…………………… Q11_B : Un médecin peut-il recevoir plusieurs patients dans la même consultation ? …………………………………………………………………………………………….…………………… Q11_C : Peut-on prescrire plusieurs médicaments lors d’une même consultation ? …………………………………………………………………………………………….…………………… Q11_D : Deux médecins différents peuvent-ils prescrire le même médicament ? …………………………………………………………………………………………….…………… ……… Page 1/2 _Bases de Données Avancées. Master IMAE par M. Eboueya 1.2 Tournoi de tennis ( 2 pts) Le second schéma ci-dessous représente des rencontres dans un tournoi de tennis. Q12_A : Peut-on jouer des matchs de double (4 joueurs en même temps, 2 contre 2)? …………………………………………………………………………………………….…………………… Q12_B : Un joueur peut-il gagner un match sans y a voir participé ? …………………………………………………………………………………………….…………………… Q12_C : Peut-il y avoir deux matchs sur le même terrain à la même heure ? …………………………………………………………………………………………….…………………… Q12_D : Donnez votre interprétation de l’attribut Horaire . …………………………………………………………………………………………….…………………… 1.3 Un journal (1,5 pts) Page suivante, il y a le schéma E/A du système d'information (très simplifié) d'un quotidien. Q13_A : Un article peut-il être rédigé par plusieurs journalistes ? …………………………………………………………………………………………….…………………… Q13_B : Un article peut-il être publié plusieurs fois dans le même numéro ? …………………………………………………………………………………………….…………………… Q13_C : Peut-il y avoir plusieurs articles sur le même sujet dans le même numéro ? …………………………………………………………………………………………….…………………… Page 2/2 _Bases de Données Avancées. Master IMAE par M. Eboueya 2 Modèle relationnel (2 pts) Pour chacun des schémas E/A donnés précédemment, construire le schéma relationnel correspondant. Indiquez précisément : la clé primaire, les clés étrangères et les contraintes éventuelles. Par exemple pour le centre médical la réponse est : Consultation ( Numero, Date, Matricule, NoSecu); -- Matricule et NO-SS sont les clés étrangères Medecin ( Matricule, Nom); Medicament (Code, Libelle); Patient (NoSecu, Nom ); Prescrit (Numero, Code, Nb prises ) ; -- Prescription Q2_ A : Pour le tournoi de tennis ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 3/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Q2_ B : Pour le Journal ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… 3 Rétro-conception ( 3 pts) On trouve dans un SGBD relationnel les relations ci-dessous. Les clés primaires sont soulignées, mais pas les clés étrangères. AGENCE(NUM_AGENCE, NOM_AGENCE, VILLE_Agence, ACTIF); CLIENT(NUM_CLIENT , NOM_CLIENT, VILLE _Client) ; COMPTE(NUM_COMPTE, NUM_AGENCE ,NUM_CLIENT, SOLDE ); EMPRUNT(NUM_EMPRUNT,NUM_AGENCE, NUM_CLIENT, MONTANT) ; Q3_A : Identifier les clés étrangères dans chaque relation. …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q3_B : Reconstruire le schéma E/A. ; puis le Schéma UML Page 4/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Q3_C : Existe-t-il des contraintes d'intégrité ? Lesquelles ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… en séance de TP, utiliser le jeu de données suivant pour implanter totalement cet exercice. // creé sous Postgress drop table Agence; drop sequence Agence_Num_Agence_seq; CREATE TABLE Agence( Num_Agence INTEGER NOT NULL PRIMARY KEY, Nom text NOT NULL, Ville TEXT, Actif INT8 ) ; INSERT INTO Agence values ('001','Saturnin','La Rochelle',40000000); INSERT INTO Agence values ('002','Jupiter','La Jarne',30000000); INSERT INTO Agence values ('003','Mercurus','Panam',60000000); INSERT INTO Agence values ('004','SuperAgence','Super Ville',900000); INSERT INTO Agence values ('005','Kagence','Dijon',4000000); INSERT INTO Agence values ('006','Stephanus','Rennes (Bretagne en force)',40000000000); INSERT INTO Agence values ('007','Ordinatorus','Informatic City',50000000); INSERT INTO Agence values ('008','Sam','Denver',990000000); INSERT INTO Agence values ('009','MikeAgence','Toulouse',80000000); INSERT INTO Agence values ('010','IUP Agence','La Rochelle',20); INSERT INTO Agence values ('011','Orsay','La Rochelle',200000000); INSERT INTO Agence values ('012','Paris-Etoile','Paris',2000000000); INSERT INTO Agence values ('013','Paris-Rambuteau','Paris',200000); INSERT INTO Agence values ('014','Nobody Agence','Nulle Part',200000); drop table Client; drop sequence Client_Num_Client_seq; CREATE TABLE Client( Num_Client INTEGER NOT NULL PRIMARY KEY, Nom VARCHAR(50) NOT NULL, Ville TEXT ) ; INSERT INTO Client values ('001','Mike','Mike City'); INSERT INTO Client values ('002','Mike s Wife','Mike City'); INSERT INTO Client values ('003','Youri kiki','La Rochelle'); INSERT INTO Client values ('004','Samuel Sam','Saint Nazaire'); INSERT INTO Client values ('005','Rico Rousso','La Rochelle'); INSERT INTO Client values ('006','Loic Raison','Dijon'); INSERT INTO Client values ('007','Alice PasBeau','Cunot City'); INSERT INTO Client values ('008','Benji La Malice','L Espace'); INSERT INTO Client values ('009','Saint James','Grosse Teub Land'); INSERT INTO Client values ('010','Farid le Berebere','Perdu dans le desert Ville'); INSERT INTO Client values ('011','Francisco','Paris'); INSERT INTO Client values ('012','Fred Poupon','Je sais pas'); INSERT INTO Client values ('013','Vincent le Timide','Même pas peur land'); Page 5/2 _Bases de Données Avancées. Master IMAE par M. Eboueya INSERT INTO Client values ('014','Claude','La Rochelle'); INSERT INTO Client values ('015','Stephane Le Breton','Breizh'); INSERT INTO Client values ('016','Dupont','GrandVille'); INSERT INTO Client values ('017','Moi','Paris'); drop table Compte; drop sequence Compte_Num_Compte_seq; CREATE TABLE Compte( Num_Compte INTEGER NOT NULL PRIMARY KEY, Num_Agence INTEGER NOT NULL, Num_Client INTEGER NOT NULL, Solde INT8, FOREIGN KEY (Num_Agence) REFERENCES Agence, FOREIGN KEY (Num_Client) REFERENCES Client ) ; INSERT INTO Compte values ('01',01,02,200); INSERT INTO Compte values ('02',02,02,2000); INSERT INTO Compte values (03,03,3,20000); INSERT INTO Compte values (04,04,04,20000); INSERT INTO Compte values (05,05,5,20000); INSERT INTO Compte values (06,06,6,20000); INSERT INTO Compte values (07,07,7,20000); INSERT INTO Compte values (08,08,8,20000); INSERT INTO Compte values (09,09,9,20000); INSERT INTO Compte values (10,10,10,450000); INSERT INTO Compte values (11,11,11,460000); INSERT INTO Compte values (12,12,12,20000); INSERT INTO Compte values (13,01,13,780000); INSERT INTO Compte values (14,02,14,2054); INSERT INTO Compte values (15,03,15,2078); INSERT INTO Compte values (16,04,16,2354); INSERT INTO Compte values (18,05,1,2456); INSERT INTO Compte values (19,06,4,25650); INSERT INTO Compte values (20,07,14,2000); INSERT INTO Compte values (21,02,10,30); drop table Emprunt; drop sequence Emprunt_Num_Emprunt_seq; CREATE TABLE Emprunt( Num_Emprunt INTEGER NOT NULL PRIMARY KEY, Num_Agence INTEGER NOT NULL, Num_Client INTEGER NOT NULL, Montant INT4, FOREIGN KEY (Num_Agence) REFERENCES Agence, FOREIGN KEY (Num_Client) REFERENCES Client ) ; INSERT INTO Emprunt values (01,01,01,200); INSERT INTO Emprunt values (02,02,02,2000); Page 6/2 _Bases de Données Avancées. Master IMAE par M. Eboueya INSERT INTO Emprunt values (03,03,3,20000); INSERT INTO Emprunt values (04,04,04,20000); INSERT INTO Emprunt values (05,05,5,20000); INSERT INTO Emprunt values (06,06,6,20000); INSERT INTO Emprunt values (07,07,7,20000); INSERT INTO Emprunt values (08,08,8,20000); INSERT INTO Emprunt values (09,09,9,20000); INSERT INTO Emprunt values (10,10,10,450000); INSERT INTO Emprunt values (11,11,11,460000); INSERT INTO Emprunt values (12,12,12,20000); INSERT INTO Emprunt values (13,01,13,780000); INSERT INTO Emprunt values (14,02,14,2054); INSERT INTO Emprunt values (15,03,15,2078); INSERT INTO Emprunt values (16,04,16,2354); INSERT INTO Emprunt values (17,04,16,230014); INSERT INTO Emprunt values (18,05,1,2456); INSERT INTO Emprunt values (19,06,4,25650); INSERT INTO Emprunt values (20,07,14,2000); INSERT INTO Emprunt values (21,02,10,30); INSERT INTO Emprunt values (22,13,12,2000); INSERT INTO Emprunt values (23,13,11,30000); INSERT INTO Emprunt values (24,13,14,2000); INSERT INTO Emprunt values (25,13,2,8000); 4 Normalisation L'application visée est le système d'information d'un zoo, et on suppose que l'on se trouve dans la situation suivante : une personne peu avertie, pressée (elle n'a pas suivi les enseignements de Bases de Données !) a créé en tout et pour tout une seule table dans laquelle on trouve toutes les informations. Voici le schéma de cette table. CREATE TABLE Zoo ( Animal Number(4), Annee_naissance NUMBER(4), Gardien VARCHAR2 (20), Salaire NUMBER (10,2), Origine VARCHAR2 (10), Surface NUMBER (3), Libelle_empl VARCHAR2 (20)); Nom Espece Prenom Classe Emplacement Type_empl VARCHAR2 (20), VARCHAR2(10), VARCHAR2 (10), VARCHAR2 (10), NUMBER(4), NUMBER(2), Chaque ligne correspond à un animal auquel on attribue un nom propre, une année de naissance et une espèce (Ours, Lion, Boa, etc.). Cet animal est pris en charge par un gardien (avec prénom et salaire) et occupe un emplacement dans le zoo (numéro d'emplacement, surface, type_emplacement et libellé_emplacement : savane, désert, forêt, etc.). Enfin chaque espèce appartient à une classe (les mammifères, poissons, reptiles, batraciens ou oiseaux) et on considère pour simplifier qu'elle provient d'une origine unique (Afrique, Europe, etc.). Q4_A : Imaginez qu’une extension de cette table soit celle qui se trouve ci - dessous, vous constaterez à l'oeil nu de nombreuses redondances et anomalies . Indiquez les. (3 pts) (conseil : lire tout l’énoncé de cet exercice avant de répondre aux questions). Zoo Page 7/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Animal Nom AnNais 1 Hector 1998 Lion 1 Gégé 1000 Mammifère Afrique 4 12 Savane Namibie 2 Jacko 1998 Singe 2 Manu 1100 Mammifère Asie 2 7 Foret Inde 7 Noble 1999 Lion 1 Gégé 1000 Mammifère Asie 4 12 Savane Namibie 3 Tedi 1980 Ours 3 Domi 950 Mammifère Amérique 3 7 Jungle Inde 4 Bear 2001 Ours 3 Domi 1000 Mammifère Amérique 2 7 Forêt Gabon 12 Nono 2000 Ours 3 Domi 1100 Mammifère Europe 1 20 Foret Vercors 14 Tedi 1998 Ours 3 Domi 950 Batracien Afrique 4 12 Savane Namibie 2 Bengale 2000 Tigre 1 GéGé 1000 Reptile Asie 2 8 Foret Inde 5 Hector 1995 Tigre 1 GéGé 1100 Oiseau Afrique 4 11 Savane Namibie 12 Zebré 1990 Tigre 1 Gégé 950 Batracien Europe 1 14 Foret Gabon Fant 2000 Serpent Domi 950 3 7 Jungle Inde Magot 1995 Singe Manu 1200 2 7 Foret Inde 6 Espèce Gardien Prénom 2 Salaire Classe Origine Emplt Surface Type_Em Lib_Em Mammifère Amérique Oiseau Afrique …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Pour définir un bon schéma relationnel, on vous donne les spécifications suivantes, sous forme de dépendances fonctionnelles : • Animal! Nom, Année_naissance, Espèce, Emplacement. • Nom! Espèce, Animal. • Espèce !Origine, Classe. • Gardien !Prénom, Salaire. • Emplacement! Surface, Type_emplacement, Gardien. • Type_emplacement !Libellé_emplacement. Q4_B 1 : Expliquez pourquoi le contenu actuel de la table n’est pas conforme à ces spécifications . (1 pt) …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 8/2 _Bases de Données Avancées. Master IMAE par M. Eboueya …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 9/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Q4_B 2 : Pour chaque dépendance fonctionnelle A! B, où B est un attribut, exécutez l'ordre SQL SELECT A, count(DISTINCT B) FROM zoo GROUP BY A. (1 pt) En quoi cela peut il servir dans la résolution de notre problème? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… En d’autres termes , Si la table respecte la DF, count(*) doit valoir ... (à votre avis ?). …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Vous pouvez donc chercher les anomalies en ajoutant un HAVING COUNT (DISTINCT B) > ... à la requête cidessus. Q4_B 3 : Donnez la signification, le résultat et montrez l’intérêt de chacune des requêtes suivantes : (1,5 pt) Q4_B 3 1 : SELECT animal, count (distinct nom), count (distinct annee_naissance), count (distinct espece), count (distinct emplacement) FROM zoo GROUP BY animal HAVING count (distinct nom) >1 OR count(distinct annee_naissance) > 1 OR count(distinct espece) > 1 OR count (distinct emplacement) >1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q4_B 3 2 : SELECT nom, espece, COUNT (distinct animal) FROM zoo GROUP BY nom, espece HAVING COUNT (distinct animal) > 1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q4_B 3 3 : SELECT espece, count(distinct origine), count(distinct classe) FROM zoo GROUP BY espece HAVING count (distinct origine)>1 OR count (distinct classe) >1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 10/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Q4_B 3 4 : SELECT gardien, count(distinct prenom), count(distinct salaire) FROM zoo GROUP BY gardien HAVING count (distinct prenom)>1 OR count (distinct salaire) >1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q4_B 3 5 : SELECT emplacement, count(distinct surface), count(distinct type_empl), count (distinct gardien) FROM zoo GROUP BY emplacement HAVING count (distinct surface)>1 OR count (distinct gardien) >1 OR count (distinct type_empl) > 1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q4_B 3 6 : SELECT type_empl, count(distinct libelle_empl) FROM zoo GROUP BY type_empl HAVING count (distinct libelle_empl) >1; …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q4_B 37 : Donnez un schéma en troisième forme normale et/ou écrivez directement les ordres CREATE TABLE correspondant (avec des contraintes PRIMARY KEY, FOREIGN KEY NOT NULL, UNIQUE). ATTENTION : une table à laquelle on fait référence dans un FOREIGN KEY doit avoir été créée avant. Il faut donc faire attention à l'ordre de création des tables. ( 3 pts) …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 11/2 _Bases de Données Avancées. Master IMAE par M. Eboueya …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Q5 : Vous devez maintenant avoir un bon schéma ! ?, Page 12/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Donnez pour les tables précédentes leurs nouveaux contenus, extrait manuellement par vos soins (même si cela est possible aussi via SQL entre la table Zoo et les nouvelles tables). ( 1,5 pt) …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………. …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………… Q5 : Exprimez en SQL les requêtes qui suivent. ( 3 pts) Page 13/2 _Bases de Données Avancées. Master IMAE par M. Eboueya Quels sont les Ours du zoo ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Quels animaux s'appellent Hector ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Quels animaux habitent dans la jungle ? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… De quels animaux s'occupe le gardien Gégé? …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Sur quel(s) emplacement(s) y a t’il des animaux de classes différentes (no, surface et libellé du type de l'emplacement). …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Somme des salaires des gardiens. …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 14/2 _Bases de Données Avancées. Master IMAE par M. Eboueya …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… …………………………………………………………………………………………….…………………… Page 15/2 _Bases de Données Avancées. Master IMAE par M. Eboueya