TD 1 - LRI
Transcription
TD 1 - LRI
Année 2013/2014 Deuxième semestre DUT FC Air France Département INFORMATIQUE Travaux Dirigés de Bases de Données n˚ 1 Introduction au schéma relationnel Le but de ce TD est de comprendre à partir d’exemples l’organisation en tables, des donnés gérée par un système de gestion de bases de données (SGBD) ainsi que les notions de clé primaire et de contrainte d’intégrité référentielle. Exercice 1. Max et les ferrailleurs En janvier 2006, après 20 ans à perdre ses outils ou ses amis car ces derniers ne lui rendent pas les premiers à temps, Max bricoleur hors pair, mais peu organisé, décide de se discipliner et de mettre en place un carnet (voir Figure 1) où il note ce qu’il prête, à qui et à quelle date. Défonceuse prêtée à Pierrot le 5 janvier promise pour le weekend du 1er mai 2006 Perceuse prêtée à Albert le 7 janvier promise pour le 20 janvier revenue le 8 janvier 2006 Perforateur prêté à Jules le 15 janvier promis pour le 20 janvier 2006 Perceuse prêtée à Patrick le 12 avril 2006 Brosse à maroufler prêtée à Jean le 15 avril revenue le 20 avril 2006 Table à tapisser, brosse à maroufler, cutters, brosse à encoller prêtés à Guy le 1 mai 2006 Scie sauteuse prêtée à Pierre Lehaut 7 janvier 2007 Figure 1 : Une page du carnet de Max Lorsque le 7 janvier 2007 un nouveau collègue « Pierre Lehaut » dit « Pierrot » lui demande de lui prêter une scie sauteuse et une défonceuse, Max est contraint d’ajouter « 2006 » pour tous les prêts déjà enregistrés et d’indiquer « Pierre Lehaut » au lieu de « Pierrot » pour ne pas confondre son collègue avec son beau frère (lequel doit lui rendre la défonceuse depuis plus de 7 mois). Max comprend ainsi les limites de cette organisation qui a pourtant fonctionné pour l’année 2006. Enfin en retraite, quelques 7 ans plus tard, Max décide de gérer son système de prêt d’outils grâce à une base de données relationnelle dont il récupère le schéma sur Internet (voir Figure 2). 1.1 En vous aidant de la page du carnet de Max de la Figure 1 remplir à la main la table Objet définie par la Figure 2 qui répertorie tous les outils que Max veut bien prêter à ses amis. 1.2 Ajouter aux outils que Max accepte de prêter la nouvelle scie circulaire qu’il vient d’acheter le 5 septembre 2013 à 79€ 1.3 En vous aidant de la page du carnet de Max de la Figure 1, remplir à la main les tables Pret et Contact qui, respectivement, répertorie tous les outils que Max a déjà prêté à ses amis et liste les amis auxquels il veut bien prêter des outils. Pourquoi l’ordre de remplissage des ses deux tables a-t-il un intérêt particulier ? 1.4 Etant donné l’état actuel de votre base de données, est-il possible d’ajouter les lignes suivantes à la table Pret ? On indiquera la signification des lignes pour lesquelles la réponse est « oui » et on expliquera pourquoi pour certaines lignes la réponse est « non » : - 1, 1, 3 juillet 2013, 5 juillet 2013, 4 juillet 2013 Page 1 Bases de données – TD 1 Année 2013/2014 Deuxième semestre DUT FC Air France Département INFORMATIQUE - 125, 1, 10 juin 2013, , 1, 1, 5 janvier 2006, 8 janvier 2006, 1.5 Quels sont les attributs qu’on veut voir affiché pour les réponses aux questions suivantes ? a. Qui n’a pas prévu de date de retour pour au moins un de ses emprunts ? b. Qui n’a jamais prévu de date de retour pour son emprunt ? c. Combien d’amis ont déjà emprunté la perceuse ? d. Qui a toujours rendu ses outils en retard ? e. Combien d’outils sont en attente de retour ? f. Où se trouve la photo de la scie circulaire ? g. Quelles sont les informations que j’ai dans cette base de données sur mon ami Pierrot ? h. Quelles sont les informations personnelles que j’ai dans cette base de données sur mon ami Pierrot ? 1.6 Quelles sont les tables mises en jeu dans le calcul de la réponse aux questions précédentes ? 1.7 Quelles requêtes sur la base de données faut-il faire avant d’effectuer un nouvel emprunt ? On ne demande pas ici d’écrire les requêtes mais d’écrire les questions en français nécessaire pour s’assurer que l’emprunt est possible. 1.8 Parmi les réalités suivantes qu’elles sont celles modélisables par la base de données et celles qui ne le sont pas ? a. Janine et Marianne figurent toutes les deux sur la même photo que la scie circulaire. b. Quelqu’un emprunte un objet dont il n’y a pas de photo disponible dans la base de données. c. Jules emprunte la brosse à encoller alors que Jim ne l’a pas encore rendue. d. Un objet est rendu avant qu’une date de retour soit prévue. e. Patrick et Pierre empruntent tous les deux la perceuse le 5 juillet 2013. f. Cinq outils sont rendus le même jour. g. Un objet qui a déjà été emprunté est détruit et restera dans la base sans être empruntable. h. Ernest, voisin de Max emprunte et rend successivement 5 fois le tournevis électrique dans la même journée. i. Max possède et prête deux scies circulaires identiques achetées au même prix et dont il n’a qu’une photo. Pret Contact NumContact NumObjet DatePret DateRetourPrevu DateRetourReel NumContact Nom Prenom Surnom ReferencePhoto TelephoneDomicile TelephonePortable TelephoneBureau Objet NumObjet NomObjet DateAchat PrixAchat ReferencePhoto Photo NumPhoto AdresseJPG Figure 2 : le schéma relationnel Page 2 Bases de données – TD 1 Année 2013/2014 Deuxième semestre Département INFORMATIQUE DUT FC Air France Exercice 2. Vincent, François, Paul et les autres Chacun des schémas de base, présentés en annexe, traitent de l’assurance des animaux pour différents risques qu’ils peuvent encourir ou faire encourir à autrui. Les risques sont répertoriés dans la table Risque dont un exemple de contenu possible est fourni ci-contre. NumRisque 1 2 3 4 NomRisque Morsure d’autrui Décès de l’animal Fugue Dégradation du bien d’autrui Table Risque Le but de l’exercice est de trouver quelle réalité est modélisable par chacun des schémas relationnels. Pour chacune des phrases possibles, mettre oui dans la case si le schéma permet modéliser un tel cas et non s’il ne permet pas de le modéliser. Justifiez vos réponses. Réalité 1 Un chien a plusieurs maîtres 2 Un humain est le maître de plusieurs chiens 3 4 5 6 7 8 9 schéma 1 schéma 2 schéma 3 schéma 4 Tous les chiens de Vincent sont nécessairement assurés pour les mêmes risques Médor (tatoué 31) est un chien assuré contre le décès et la morsure Rex est assuré par François contre le décès, par Paul contre la morsure et par Vincent contre la fugue César et Rosalie assurent l’un et l’autre le chien Bond tatoué 1007 contre la morsure Rex (tatoué 126) et Rex (tatoué 32) sont tous les deux des chiens de Max Pascal (né en 55) et Pascal (né en 72) ont l’un et l’autre un chien qui s’appelle Rapide Tous les chiens connus dans la base sont assurés contre la morsure et la dégradation des biens d’autrui 10 Tous les chiens connus sont assurés par Mado Page 3 Bases de données – TD 1 Année 2013/2014 Deuxième semestre DUT FC Air France Département INFORMATIQUE Chien Assurance Risque NumRisque NumAssuré NumRisque NomRisque Humain NumTatouage NomChien NumMaitre NumSecu Nom Schéma 1 Chien Assurance Risque NumTatouage NomChien NumMaitre NumRisque NumAssuré NumRisque NomRisque Humain NumSecu Nom Schéma 2 Chien Assurance Risque NumTatouage NomChien NumRisque NumAssuré NumMaitre NumRisque NomRisque Humain NumSecu Nom Schéma 3 Chien Assurance Risque NumTatouage NomChien NumRisque NumAssuré NumMaitre NumRisque NomRisque Humain NumSecu Nom Schéma 4 Page 4 Bases de données – TD 1