Está en la página 1de 42

ISI4 Bases de donnes Exercices

L2 MASS / L3 MIAGE 2009-2010

Elena Kornyshova Bureau C1405

kornyshova@univ-paris1.fr

Cave vin.................................................................................................................................................3 Base clientle ...........................................................................................................................................4 Logistique ................................................................................................................................................5 Cls...........................................................................................................................................................5 Cot de limmobilier ............................................................................................................................... 6 Gestion des fournisseurs ..........................................................................................................................6 Jeux et contraintes.................................................................................................................................... 7 Nomenclatures de fabrication...................................................................................................................9 Dpendances fonctionnelles................................................................................................................... 10 Les dpartements....................................................................................................................................11 Gestion des Livraisons........................................................................................................................... 12 Plonge sous-marine.............................................................................................................................. 16 Rservations de thtre .........................................................................................................................18 Courses de chevaux ............................................................................................................................... 19 Rservations htelires .........................................................................................................................20 Prts bancaires .......................................................................................................................................22 Gestion du parc automobile ...................................................................................................................23 Le cirque Gogol .....................................................................................................................................25 Locations de voitures ............................................................................................................................ 26 Les emplacements des marchs .............................................................................................................27 La bibliothque ......................................................................................................................................28 Les courses de bateaux .......................................................................................................................... 29 Le vidoclub .......................................................................................................................................... 30 Les aventures de Vil Coyote ................................................................................................................. 31 Gestion de commandes ..........................................................................................................................35 Les courses de chevaux ......................................................................................................................... 37 Caravane de chameaux ..........................................................................................................................38 Les marchs ...........................................................................................................................................39 Grand Prix ............................................................................................................................................. 40 Partiel ISI4 / Bases de donnes - Janvier 2009 DEVOIR MAISON 2009-2010..............................................................................................................41

CAVE VIN
Un caviste dsire informatiser la gestion de ses bouteilles. Les donnes contenues dans la table cidessous reprsentent linformation quil dsire conserver sur la qualit de ses vins.

Rgion Bourgogne Bourgogne Bordeaux Bordeaux Beaujolais Beaujolais Bordeaux Bordeaux Beaujolais Beaujolais Bordeaux Bordeaux Touraine Bordeaux Touraine Bourgogne Bourgogne Touraine Touraine Bourgogne Bourgogne Touraine

Appellation Chteau Sapeur Chteau Fenouillard Chteau Lagaffe Chteau Moucherot Chteau Blancsec Chteau Hobbes Chteau Lagaffe Chteau Moucherot Chteau Blancsec Chteau Hobbes Chteau Lagaffe Chteau Du Vent Chteau Nickel Chteau Moucherot Chteau Troy Chteau Sapeur Chteau Fenouillard Chteau Fog Chteau Troy Chteau Sapeur Chteau Fenouillard Chteau Fog

Producteur Bert Encam Cunegonde Lainesse Gaston Ledormeur Jrome Chvre Adle Matino Calvin Lepetit Gaston Ledormeur Jrome Chvre Adle Matino Calvin Lepetit Gaston Ledormeur Isabelle Passager Jack Forton Jrome Chvre Lignole Charleston Bert Encam Cunegonde Lainesse Jack Forton Lignole Charleston Bert Encam Cunegonde Lainesse Jack Forton

Millesime 1994 1994 1995 1995 1996 1996 1996 1996 1997 1997 1997 1997 1997 1997 1997 1998 1998 1998 1998 1999 1999 1999

Qualit ** ** *** *** * * ** ** *** *** *** *** * *** * *** **** ** ** * * *

1. Quel est le schma de cette table ? Quelle est sa cardinalit ? Quels sont les domaines de valeurs des attributs Rgion , Millsime et Qualit ? 2. Comment ces donnes ont-elles t tries ? 3. Quels liens peut-on identifier entre rgion, appellation et producteur ? (rponse attendue du type : il a un producteur par rgion ou au contraire il a plusieurs producteurs par rgion etc) 4. Quels liens peut-on identifier entre qualit et millsime ? 5. Peut-on viter des redondances en divisant cette table en deux ? 6. Le couple dattributs rgion & appellation pourrait-il servir de cl pour cette table ? Sinon, quelle cl proposeriez-vous ?

BASE CLIENTLE
Votre responsable vous demande de lui constituer une base de donne lui permettant de conserver linformation sur ses contacts. Pour concevoir cette base de donnes, vous disposez de lchantillon de cartes de visite ci-dessous ( droite sont les prospects, gauche les clients avec lesquels des affaires ont dj t faites).

Prodigia Logistique SARL 95 rue des Dom Tom 75013 Paris Cedex

Schwarz Springer Gmbh

WeinachtStrasse 47 6481 Ulm - Germany

Tel : 01.84.56.47.93

M. Guy Pham Resp. Logistique

Matthias Whongler Editor in chief whongler@schwarz.com tel : 8154 - 7896 fax : 8154 - 7865 Ternor University 36-525 Engebler South Carolina Prof. Daniel J. Munster d.j.munster@oupla.com AC Research Center 205 St Johns Str 75-984 Devone - Wisconsin

RB-bio
MC Group Ch r i stoph er Egn i h Product Manager 125ter Baker Street NE 212 London UK

Jacqueline Lafort Traductrice - Interprte Translatoer - Interpreter


tel : +33 (0)2 43 25 25 mob : +33 (0)6 09 92 61

Gen-bio
MC Group J a ck Da n i el s Software Architect Azrael Road, StockTon, Yorkshire, UK

Quelles tables proposez vous pour structurer la base de donnes clientle ? Vous remplirez les tables proposes avec les donnes contenues dans les cartes pour vous assurer que toutes linformation est bien conserve.

LOGISTIQUE
Une entreprise de livraison dsire automatiser la gestion de ses donnes. Un stagiaire a t embauch. Il a interrog le responsable logistique. Voici un extrait de lentrevue : Stagiaire : A quel usage destinez-vous la base de donnes que vous me demandez ? Resp. Logistique : Il sagit de grer les trajets de nos camions. J arrive amliorer nos performances et diminuer les cots en regroupant les livraisons dont lorigine et la destination sont identiques, lorsque les dates prvues sont les mmes. Le problme cest que jai plus de trois mille livraisons traiter chaque jour. Jarrive trouver certains regroupements, mais linformation est trop disparate, je suis sr que jen laisse passer beaucoup. Stagiaire : Les trajets de vos camions sont-ils souvent les mmes ? Resp Logistique : Oui. Par exemple la semaine prochaine, nous avons prvu 84 livraisons de Lille vers Paris, et 66 de Paris vers Lille. Ce qui signifie quil y aurait 18 Lille-Paris vide si je ne fais rien. Avec une base de donnes mindiquant jour par jour toutes les livraisons Paris-Lille et Lille-Paris, jimagine que je pourrais plus facilement voir comment regrouper les livraisons. Idalement, ce genre de systme nous permettrait de ne faire quun aller-retour par jour au plus entre deux villes. La seule contrainte, cest de ne pas dpasser la charge maximale du camion. Par exemple, Jeudi prochain, on a trois Paris-Lyon livrer un de 8 tonnes, lautre de 7 tonnes, et le troisime de 6 tonnes. Je sais que je ferais une conomie dchelle si je me contente denvoyer un 17 tonnes accompagn dun petit 5 tonnes plutt que trois 10 tonnes comme a nous arrive souvent. Quels que soient les quantits livrer au retour, je sais que jy gagnerai. 1. Parmi les renseignements fournis par le responsable logistique, certains sont associs aux camions, dautres aux livraisons. Listez les renseignements associs chacun de ces deux lments. 2. Dans les listes que vous avez dresses ci-dessus, soulignez les renseignements qui sont de niveau type (noms et attributs de tables). Quel devrait tre daprs vous le schma des tables camion et livraison ? 3. Parmi les renseignements que vous navez pas soulign en rpondant la question 2, certains pourraient tre des valeurs dattribut, dautre pas. Lesquels ? 4. Imaginez une cl pour les tables camion et livraison.

CLS
Dans chacune des deux tables ci-dessous, identifiez lattribut pouvant servir de cl primaire. T1 A 1 6 5 5 1 B 5 4 8 9 2 C 4 2 7 9 2 D 4 2 3 3 6 T2 E 4 9 9 8 7 F 2 0 3 6 0 G 9 4 5 5 2 H 2 1 3 7 6

Cherchez dans la table T2 la cl trangre la liant T1.

COT DE LIMMOBILIER
Le tableau ci-dessous prsente largus du logement Paris (prix lachat au mtre carr).
Paris 1er Louvre S-2P Rcent Rnov Ancien Paris 2 Bourse S-2P Rcent Rnov Ancien Max Min Max Min Max Min 27463 24322 23113 20263 19406 14649 3P 28416 15114 24001 21164 19949 15064 Max Min Max Min Max Min 46165 39257 36600 30997 28543 19168 St Germain L'auxerois 3P 43700 37085 34541 29175 26740 18102 Gaillon 4P 31407 27757 26353 23392 22049 16650 5P + 38673 34002 32206 28417 26697 20012 S-2P 30524 26580 25063 21863 20410 15188 3P 32535 28306 26679 23248 21690 15943 4P 37982 32233 30022 25358 23240 15733 5P + 42741 36300 33823 28600 26226 17720 S-2P 33320 29329 27794 24557 23088 15638 3P 33796 29779 28235 24977 23497 15422 Vivienne 4P 33878 29447 27799 24237 22620 16729 5P + 32264 28083 26475 23080 21543 15933 Halles 4P 35281 30984 29331 25846 24263 16987 5P + 37937 33317 31540 27791 26090 18265

Quelle est la relation permettant denregistrer ce tableau ? Vous dfinirez pour chaque attribut de cette relation, son domaine de valeurs.

GESTION DES FOURNISSEURS


Crez avec MS-Access (ou MS-Excel) la base de donne reposant sur la table ci-dessous

NumroArticle 1 2 3 4

NomArticle Clou Vis Boulon Ecrou

NomFournisseur BHV Mr Bricolage Bricolex BHV

AdresseFournisseur Rue de Rivoli Place dItalie Avenue Ledru Rollin Rue de Rivoli

Indpendance des donnes : 1) Supprimez les clous et les boulons de votre base de donne 2) Retrouvez ladresse du BHV 3) Quel est la nature du problme ? Comment aurait-il fallu sy prendre pour lviter ? Cohrence : 4), crez le produit (5, Tournevis, bazar de lhotel de ville, Rivoli). Quel est le problme ? Unicit des saisies : 5) En repartant de la base de dpart, crez cinq articles de votre choix vendus par Bricolex. Combien de fois avez vous saisi ladresse de ce fournisseur ? Est-ce normal ? 6) Comment faudrait-il sy prendre pour viter davoir re-saisir le nom et ladresse du fournisseur au moment de la cration dun produit, lorsque celui-ci est dj dans la base ? 6

JEUX ET CONTRAINTES
Dans les questions qui suivent, des tables enregistrent les donnes de diffrents jeux sur ordinateur. Proposez un type pour les attributs de chaque table. Identifiez les erreurs dans le contenu des tables. Trois catgories derreurs sont prsentes : de modlisation des tables, dincohrence des donnes par rapport au modle relationnel propos, et enfin de violation des rgles du jeu. Dfinissez la catgorie de chaque erreur. 1) Jeu de dames - tat dune partie Plateau colonne g h c e a b g d f

ligne 4 5 8 8 4 5 4 4 5

pice pion reine pion pion reine reine pion pion pion

couleur blanc noire noir noir blanche blanche blanc blanc blanc

NB : la plus grande case du plateau est j10. La case a1 est noire. Initialement, la case en bas gauche de chaque joueur est occupe par un pion 2) Mots croiss - bd de dfinitions Dfinitions numProblme 01-125 01-126 01-125 02-45 01-126 01-125

horizontalement III 1 -

verticalement 2 1 2 6

dfinition Produit Intrieur Brut Port et capitale Europenne Salles dattente avant lentre en piste Le Titane Bout de guimauve Modle rduit dans les airs. Le prix de la faute

3) Echecs - bd de fins de partie Partie num 1964 1964 1964 1964 1964 1964 1964 1964 colonne e0 h e c f g c e 7 ligne 7 7 6 5 5 4 5 2 pice roi noir pion noir roi blanc pion noir pion noir tour blanche fou noir roi blanc

4) Belote - tat dune partie Mains numquipe numjoueur carte 1 2 as pique 1 1 dame trelfe 1 2 roi cur 2 3 6 pique 1 2 8 trefle Plis carte valet trefle roi trefle huit coeur dame trefle dix trefle

numJoueur 1 1 2 1 1

numPli 2 2 3 2 2

5) Scrabble - rsum de parties Proposez un schma de relation permettant denregistrer le rsum de parties de Scrabble.

LES LIVRES DUNE BIBLIOTHQUE


Une table a t dfinie pour enregistrer les donnes sur les livres que possde une bibliothque. NumLivre Titre Auteur 1030 Lhumanit perdue Finkelkraut A. 1032 Mercure Nothomb A. 1045 Eva Luna Allende I. 1029 Lhumanit perdue Finkelkraut A. 1067 Mercure Nothomb A. 1022 Les combustibles Nothomb A. NumAuteur 124563 26334 46A215 124563 26334 26334 ISBN DateAchat Emp 2 02 033300 7 14/10/00 F3 2 253 14911 X 14/10/00 G5 2 253 05354 6 22/02/01 F3 2 02 033300 7 14/10/00 F3 2 253 14911 X 24/02/01 G5 2 125 04121 V 3/10/00 G6

Selon cette table, chaque livre a un numro, un titre, un auteur, un code ISBN, une date dachat et un emplacement dans les rayonnages. 1) Crez dans Excel cette table avec ses donnes. 2) Mettez jour les noms dauteurs en indiquant les prnoms de manire extensive selon la procdure suivante : - modifiez le nom de lauteur du livre 1030 ; lauteur de Lhumanit perdue est-il partout Alain Finkelkraut ? - Combien de fois faut-il rpter lopration de modification du nom de lauteur du livre Mercure . Et de manire gnrale ? - Lorsque vous modifiez le nom de lauteur de Mercure , le rsultat est-il rpercut sur lauteur de Les combustibles (cest le mme auteur) ? 3) Identifis partir des donnes prsentes ci-dessus les dpendances fonctionnelles permettant de dduire une version de la table Livre normalise en 3FN 4) Prsentez sur papier les tables rsultant de cette normalisation avec leur contenu. Comment rpondriez-vous la question 2 aprs normalisation ?

NOMENCLATURES DE FABRICATION
En fabrication industrielle, une nomenclature de bureau dtude indique la composition dun article fabriqu (aussi bien un avion quun paquet de savon). Une nomenclature est compose de postes organiss sous forme darbre, comme lindique le dessin ci-dessous.
poste 16 article 110 (jeu de dame) quantit : 1 pice

poste 25 article 91 (plateau peint) quantit : 1 pice

poste 27 article 89 (pion blanc) quantit : 20 pice

poste 28 article 85 (pion noir) quantit : 20 pice

poste 30 article 83 (emballage) quantit : 1 pice

poste 42 article 78 (plaque bois) quantit : 1 pice poste 54 article 69 (peinture blanche) quantit : 30 cl poste 55 article 68 (peinture noire) quantit : 75 cl

poste 60 article 65 (rouleau bois) quantit : 10 cm poste 62 article 69 (peinture blanche) quantit : 20 cl

poste 70 article 65 (rouleau bois) quantit : 10 cm poste 74 article 68 (peinture noire) quantit : 20 cl

Chaque poste de nomenclature : a au plus un pre dans larbre de nomenclature est identifi par un numro de poste identifie un article (compos ou composant) par son numro dfinit la quantit de larticle ncessaire pou la fabrication de larticle compos (une quantit est une valeur associe une quantit). Dfinir une table poste (avec sa cl), et illustrer son emploi par lenregistrement de la nomenclature ci-dessus.

DPENDANCES FONCTIONNELLES
1) Proprits des df :Remplacez les points dinterrogation de manire dfinir les proprits des dpendances fonctionnelles. Additivit : Projection : ?: Si Alors Si Alors Si Alors A H et ? ? A H, X F E, G ? et ? ? Z A et A Q ZQ Si ?? Alors A : X, A T Pseudo transitivit : Si E F et ? ? Alors E, G H Augmentation :

2) Historisation : Lextrait de graphe de dpendances fonctionnelles ci-contre associe tout article un nom, un prix et une quantit disponible. Dfinir une reprsentation historique de la quantit disponible et du prix des articles.
noArticle prix qtDisponible nom

4) Analyse de gdf : Critiquez le graphe de dpendance fonctionnelle ci-dessous.


c d g i l b p n f a e m h g k j

4) Normalisation : Dduisez un schma relationnel partir du graphe de dpendances fonctionnelles ci-dessous.

b d p o a e m l g n k

i f

h j

10

LES DPARTEMENTS
Soit la collection dattributs suivante : ND : numro de dpartement NOMD : nom du directeur du dpartement BUD : budget annuel allou au dpartement NP : numro de projet (unique par projet) NB : numro de bureau (unique par bureau) NT : numro de Poste tlphonique NE : numro matricule d'employ NOME : nom employ ADRE : adresse employ TELE : numro de tlphone personnel de l'employ On donne par ailleurs les renseignements suivants : Un employ, un instant donn, n'a qu'un seul bureau, ne travaille que sur un seul projet et n'est rattach qu' un seul dpartement. Il n'a bien entendu qu'un seul salaire. Un employ occupe une fonction unique laquelle correspond un salaire minimum. Chaque fonction est par ailleurs dfinie par un numro qui est unique, et par un nom qui est galement unique. Les dpartements ont une certaine autonomie : chaque dpartement a un budget propre, travaille sur un seul projet et a un directeur. Inversement : un projet peut tre trait par plusieurs dpartements. Un directeur peut diriger plusieurs dpartements Les employs peuvent tre plusieurs dans un mme bureau, et dans chaque bureau il peut y avoir un ou plusieurs postes tlphoniques. En revanche, l'annuaire tlphonique est simple puisque chaque numro de tlphone (poste entreprise) permet de contacter un et un seul employ. NF : numro de fonction (unique par fonction) SALAIRE : salaire dun employ SURF : surface de bureau NOMF : nom (libell) d'une fonction SALMIN : salaire minimum pour une fonction BP : budget allou par projet

1) Dfinissez le graphe des dpendances fonctionnelles et appliquez l'algorithme de normalisation pour dfinir la collection des relations en troisime forme normale 2) Les responsables du personnel souhaitent connatre l'historique des salaires de chacun des employs de l'entreprise et l'historique des fonctions qu'ils ont occupes. Que deviennent alors votre graphe de dpendances fonctionnelles et votre collection de tables ?

11

GESTION DES LIVRAISONS


Enregistrez localement puis ouvrez les fichiers : disponible lURL : TDInfo1.mdb, TDInfo2.xls et TDInfo3.xls crinfo.univ-paris1.fr/MSG/

Lobjectif de cet exercice est de vous faire observer les diffrentes difficults que lon peut rencontrer avec les trois stratgies de conception reprsentes par chacun des trois fichiers. Vous observerez des diffrences et les noterez dans un tableau rcapitulatif. Nous partons de lhypothse que vous savez utiliser Excel mais pas Access. Les directives ci-dessous ne sont donc relatives qu Access. Vous tes responsable de lapprovisionnement des produits et de la relation avec les fournisseurs pour une grande enseigne de produits doutillages. Vous venez dobtenir ce poste. On vous prsente les donnes que vous devez grer sous la forme du fichier Excel TDInfo2.xls. N correspond au numro du produit NomProduit correspond au nom du produit Conditionnement correspond la faon dont sont conditionns les produits (par exemple par sachet de 25 pour des clous) Quantite correspond la quantit livre Taille correspond la taille du produit (par exemple des vis de 8 mm de diamtres et 4.5 cm de long, ou standard pour une perceuse). DateLivraison correspond la date de livraison du produit NomFournisseur correspond au nom du fournisseur qui a livr ce produit AdresseFournisseur correspond ladresse du fournisseur Telephone correspond au numro de tlphone du fournisseur Un stagiaire et un collgue vous ont respectivement propos des solutions alternatives respectivement reprsentes par les fichiers TDInfo1.mdb et TDInfo3.xls. Au cours de votre activit, vous allez tre amen(e) modifier le contenu de la base de donnes. Afin de comparer les avantages et dfauts de chaque stratgie de conception, vous dcidez pour un certain temps, de faire ces modifications dans les trois fichiers et de comparer les rsultats. Louverture du fichier TDInfo1.mdb amne lcran MS-Access ci-dessous.

12

Le menu gauche prsente la liste des diffrents types dobjets que lon peut manipuler sous Access : - les tables renferment les donnes, - les requtes permettent dagir sur les donnes (addition, slection, suppression), - les formulaires facilitent ces manipulations et amliorent la prsentation. A droite sont prsentes des fonctions de cration pour chaque type dobjet (on peut crer une table, une requte, etc), et les objets de la base de donne eux-mmes (ici, les tables Fournisseur, Livraison et Produit). Cliquez gauche sur Formulaires. A droite, la liste des formulaires de la base de donnes apparat. Double cliquez sur lun des formulaires. Vous obtenez par-exemple :

Ce formulaire prsente les donnes ( enregistrements dans la terminologie Access) de la table des livraisons. Pour passer dun enregistrement un autre cliquez sur la flche (en plein cran, la flche se trouve tout en bas gauche). Vous devez effectuer les oprations suivantes : 1. Changer ladresse du fournisseur Durand. Pour cela, ouvrez le formulaire correspondant, trouvez lenregistrement correspondant au fournisseur Durand et faites les modifications demandes. Quel sont les problmes rencontrs ? 2. Introduire les donnes suivantes relatives une livraison que doit nous faire le fournisseur Cartier (59, av du Pdt Wilson, St-Denis, 0135624895), le 14/02/2003 a. 50 sachets de 50 clous de taille 5 cm et correspondant au numro de produit 1 b. 3 tournevis cruciforme de taille 8 et correspondant au numro de produit 19 c. 2 cutter correspondant au numro de produit 11.Ouvrez le formulaire Livraison. Vous obtenez lcran suivant :

13

Bouton pour insrer une livraison

Dans la base Access, vous utiliserez le bouton * (celui qui est encercl ci dessus). Avez vous vraiment cr une livraison ? Quelle(s) critique(s) et suggestion(s) pouvez-vous faire ? 3. Vous-vous rendez compte en reprenant vos livraisons quune erreur a t commise : la premire livraison de scie sauteuse a en fait t faite par le fournisseur Petit (71, av de la Rpublique, Lille, 0352314862).

Pour corriger cette erreur dans la base Access, vous retrouverez la livraison errone avec le formulaire LivraisonParProduit. Retrouvez les livraisons de scies sauteuses en naviguant de produit produit avec la flche en bas a gauche. Notez le numro de la premire livraison de scie sauteuse (dans la dernire colonne (NumLivr)). Ici par exemple, la premire livraison de boulon a le numro 2. Fermez le formulaire, puis ouvrez le formulaire Livraison pour effectuer les modifications. Naviguez dans les enregistrements jusqu trouver la livraison qui vous intresse. Fates les modifications ncessaires dans le fichier en mettant les menus droulants sur les bonnes valeurs. 14

Quels problmes rencontrez-vous dans les diffrentes mises jour ? 4. Les ponceuses se vendant mal, la dcision est prise de retirer ce produit de la vente et donc de le supprimer de la base de donnes.

Bouton pour supprimer un produit Bouton pour ajouter un produit

Dans la base Access, ouvrez le formulaire produit et effectuez la suppression. Quelles sont les diffrentes consquences de la suppression ? Ces consquences vous semblent-elles justifies ? Si non, quel(s) problme(s) rencontrez-vous et comment le(s) rsoudre ? 5. Les clients se plaignent car ils ne peuvent pas acheter de mches pour les perceuses. Vous dcidez donc de crer un nouveau produit : un jeu de mches conditionnes en coffret, avec une taille de 12 (nombres de mches dans le coffret). Pour des raisons de nomenclature, le responsable du rayon exige que le produit soit cr avec le numro 4. Dans Access, vous crerez ce produit avec le formulaire Produit. Quel(s) problme(s) rencontrez-vous ? Comment le(s) rsoudre ? 6. Le fournisseur Petit (71, av de la Rpublique, Lille, 0352314862) nous a livr le 25/04/2003 les mches de perceuse. Fates les modifications ncessaires. Utilisez le mme procd que pour la question 2. 7. Votre chef vous demande quel est le conditionnement et la liste des fournisseurs du produit numro 1. Pour cela utilisez dans Access le formulaire LivraisonParProduit. Quelle(s) remarque(s) pouvez-vous faire ? 8. Il vous demande galement de lui fournir les mmes renseignements (le conditionnement et le(s) fournisseur(s)) du produit 4. Quelle(s) remarque(s) pouvez-vous faire ? 9. Comparez le contenu de vos trois bases de donnes. Dans la base Access, cliquez droite dans la colonne Objets sur Tables et accdez aux donnes contenues dans chacune des tables en double cliquant sur le nom de la table. Que concluez-vous ?

15

PLONGE SOUS-MARINE
Les tableaux ci-dessous sont extraits des tables fdrales permettant de calculer les temps de palier lors dune plonge lair. Proposez des schmas de relations permettant denregistrer les mmes donnes. Tableau N1 : Dure des paliers lors de plonges simples en fonction de la profondeur maximale. Prof. 48 m Dure 5 min 10 min 15 min 20 min 25 min 30 min 35 min 40 min 45 min 50 min 55 min 60 min 5 min 10 min 15 min 20 min 12 m 9m 6m 2 4 7 12 18 23 27 30 32 36 2 4 3m 4 7 19 30 37 44 48 53 59 64 70 1 4 9 22 DTR 4 8 13 27 41 55 70 82 95 109 121 135 5 8 15 30 GPS D F H J K M N O * * * * D F H J

1 2 5

1 3 6 10 14 18 19

50 m

DTR = dure totale de la remonte GPS = groupe de plonges successives ; ltoile interdit la plonge successive Le chiffre en-dessous de la profondeur maximale indique le temps de plonge maximal sans palier

Lecture du tableau : si lon plonge 5 minutes 50 mtres de profondeur, il faut faire un palier de 1 minute 3 mtres ; la dure totale de remonte thorique est alors de 5 minutes, et si lon effectue une plonge successive (i.e. plus de cinq minutes aprs la remonte), on se retrouve dans le groupe GPS D pour le calcul des nouveaux paliers. Tableau N2 : Evolution du taux dazote rsiduel dans le sang GPS A B C D E 15 0.84 0.88 0.92 0.97 1.00 30 0.83 0.88 0.91 0.95 0.98 45 0.83 0.87 0.90 0.94 0.97 1h 0.83 0.86 0.89 0.93 0.96 1h30 0.82 0.85 0.88 0.91 0.93

Lecture du tableau : si lon effectue un plonge succdant une premire de 90 minutes, et que lon est dans le GPS D, le calcul des paliers devra tenir compte dun taux rsiduel dazote dans le sang de 91%.

16

Tableau N 3 : Dtermination de la majoration en minutes selon la profondeur de la deuxime plonge Azote rsiduel 0.82 0.84 0.86 0.89 0.92 12m 4 7 11 17 23 15m 3 6 9 13 18 18m 2 5 7 11 15 20m 2 4 7 10 13 22m 2 4 6 9 12

Lecture du tableau : si lon effectue une plonge 20 mtres et que cette plonge en succde une autre aprs laquelle on a un taux dazote rsiduel de 92%, il faut calculer les paliers en tenant compte dune majoration de 13 minutes. Profil de plonge : pour chaque plonge, il faut pouvoir enregistrer lheure de limmersion, lheure de sortie, le type de la plonge (premire plonge, conscutive, successive, remonte rapide), ainsi que les temps passs diffrentes profondeurs par la palanque, comme le montre le schma ci-dessous (les dures de la descente et de la remonte sont considres comme nulles).
9h15 11h45 3m, 57min 6m, 26min 9m, 2min

32m, 1h05

17

RSERVATIONS DE THTRE
On vous soumet les deux tables relationnelles suivantes : REPRESENTATION (NREP, NSPEC, NOMSPEC, NTHEATRE, NOMTHEATRE, ADRTHEATRE TELTHEATRE, DATDEBSPEC, DATFINSPEC, HEURERP, DATREP, CODPLACE, TYPEHEURE, CODEZONE, TYPEJOUR, PRIXPLACE) RESERVATION (NRES, DATRES, NOMDEM, ADRDEM, TELDEM, NREP, CODPLACE, ETATRES, DATETATRES, PRIX, CODECARTE) Les donnes permettent de grer les diffrentes reprsentations des spectacles proposs par les thtres parisiens et les rservations correspondantes. Les rgles suivantes doivent tre prises en compte pour normaliser les deux schmas de relations prcdents. Un thtre a un numro unique (NTHEATRE), un nom (NOMTHEATRE), une adresse (ADRTHEATRE) et un tlphone (TELTHEATRE). Un thtre offre plusieurs spectacles. Chaque spectacle a un numro unique (NSPEC), un nom (NOMSPEC); il se droule sur une priode donne (DATDEBSPEC, DATFINSPEC); il lui correspond "n" reprsentations. Chaque reprsentation a un numro unique (NREP), une heure donne de dbut (HEURERP) une date donne (DATREP). Afin de grer la rservation des places, la base de donnes connat tous les numros de places du thtre (CODPLACE). Chaque place correspond une zone (CODEZONE). Le prix de la place (PRIXPLACE) dpend de la zone, du spectacle, du type de jour (TYPEJOUR) de la reprsentation pour laquelle la place est loue ainsi que du type d'heure (TYPEHEURE). La rservation de places se fait par tlphone par une personne qui peut tre un particulier ou une agence caractrise par son nom (NOMDEM), son adresse (ADRDEM) et son tlphone (TELDEM). Chaque rservation a un numro unique (NRES). Elle porte sur une seule reprsentation et sur plusieurs places ventuellement. Elles correspondent un prix global (PRIX). La rservation est dite "Pendante" lorsqu'au moment de l'appel tlphonique la personne n'a pas pu donner un numro de carte de crdit (CODECARTE) ; elle est "OK" lorsque le numro de carte a t fourni ; elle est "paye" lorsque le billet a t retir et le prix pay. On veut garder la trace de l'volution de l'tat des rservations. ON VOUS DEMANDE : a) De construire le graphe de dpendances fonctionnelles lmentaires et directes sur l'ensemble des attributs. b) D'en dduire la collection des relations 3FN. c) De dcrire cette collection en utilisant SQL et en incorporant les contraintes d'intgrit. d) D'ajouter les contraintes d'intgrit qui n'ont pu tre exprimes prcdemment en les libellant en "pseudo" franais.

18

COURSES DE CHEVAUX

On s'intresse au systme d'information ncessaire l'organisation de courses de chevaux. Afin de pouvoir organiser les courses de chevaux, le systme d'information a pour objectif de fournir les palmars des chevaux et des jockeys. Il doit pouvoir fournir le rsultat de chaque course organise. On sait que les chevaux appartiennent des curies et vivent dans des haras. Un cheval est identifi sa naissance (DATENAIS) par un numro unique (NUMCHEVAL). On lui donne un nom (NOMCHEVAL), on s'intresse sa filiation, c'est--dire que l'on veut connatre son pre, sa mre. Un cheval appartient un instant donn une curie. Mais il peut changer d'curie ou/et de haras au cours de sa vie. On veut garder trace des diffrents haras ayant hberg un cheval ainsi que les diffrentes curies auxquelles il a appartenu. Le systme d'information doit tre en mesure de restituer l'historique de la vie d'un cheval tant du point de vue de son appartenance au haras, qu'aux curies. Une curie met ses chevaux en pension dans un ou plusieurs haras. On connat pour une curie son numro unique (NUMECURIE), son nom (NOMECURIE), sa couleur (COULEUR), et le nom de son propritaire (NOMPROPRIO). On dsire aussi connatre le nom et le tlphone du responsable de l'curie (NOMRESPECU, TELRESPECU). Un haras peut hberger plusieurs curies. Un haras est identifi par son nom (NOMHARAS). Pour chaque haras, on doit pouvoir connatre son adresse, son numro de tlphone (ADRHARAS, TELHARAS). Les chevaux participent des courses. Une course est identifie par un numro (NUMCOURSE). Elle a un nom (NOMCOURSE), elle se passe une date (DATECOURSE) et une heure donne (HEURCOURSE) et est d'un certain type (TYPECOURSE) (trot attel, trot mont, steeple chase,etc.). La socit des courses s'intresse aux scores des chevaux et des jockeys qui les montent. Le systme d'information doit permettre de rendre compte anne par anne du palmars de chaque jockey. Ce palmars doit donner le nombre de courses courues par le jockey pendant l'anne et le rang d'arrive (RANG) chaque course. Un jockey est identifi par un numro (NUMJOCKEY), porte un nom (NOMJOCKEY), a une adresse (ADRJOCKEY) et appartient une curie unique un instant donn. Travail demand On vous demande de construire le graphe des dpendances fonctionnelles lmentaires et directes et de dduire la collection des relations en troisime forme normale. Les cls de chaque relation doivent tre soulignes.

19

RSERVATIONS HTELIRES
On envisage de crer un systme centralis de rservations de chambres d'htel dans une rgion de vacances qui englobe plusieurs stations ayant chacune plusieurs htels Tout demandeur peut tlphoner au systme afin de rserver des chambres ; l'oprateur charg de la rservation lui demande plusieurs renseignements : nom, prnom, adresse, numro de tlphone et diverses indications sur la demande, soient la priode de rservation, le nombre de chambres, la catgorie d'htel, la station demand. Il affecte chaque demande un numro d'ordre. Pour deux priodes distinctes, on considrera qu'il y a deux demandes distinctes. L'oprateur est charg de vrifier si la demande peut-tre satisfaite ; s'il n'y a pas de possibilit de la satisfaire, il sollicite le demandeur pour formuler ventuellement une nouvelle demande. S'il est possible de satisfaire la demande, il y a confirmation par l'oprateur avec cration d'une rservation qui comporte tous les renseignements qui vont permettre de prparer ultrieurement la facture. Ce processus aboutit attribuer au client un numro qui servira d'identifiant pour celui-ci. Chaque htel est dcrit par son nom, son numro, la station laquelle il appartient, sa catgorie, le nombre de chambres disponibles, le prix unitaire de chaque chambre (prix haute saison, prix basse saison), les priodes de disponibilit pour chaque chambre ; chaque station est dcrite par son nom et son numro. On considre : - qu'une demande est relative a un seul client, ainsi que la rservation - que chaque priode est repre par une date de dbut et une date de fin. Le concepteur vous propose la collection de relations suivantes : DEMANDE (ETATDEM, NOMDEM, ADRDEM, TELDEM, DATDEBDEM, DATFINDEM, NBCHDEM, CATHOTDEM, NOMSTADEM, NUMDEM, DATDEM, DATETDEM) NOMDEM est le nom du demandeur, ADRDEM et TELDEM ses adresse et numro de tlphone ; (DATDEBDEM, DATFINDEM) dfinit la priode de rservation demande ; CATHOTDEM est la catgorie d'htel demande ; NOMSTADEM est le nom de la station et NBCHDEM est le nombre de chambres demandes. NUMDEM est le numro d'ordre de la demande, DATDEM la date de sa formulation. On admet qu'une demande puisse tre mise en attente. A cet effet, ETATDEM caractrise l'tat, et DATETDEM la date de cet tat.

20

RESSOURCE (NOMSTA, NUMSTA, NOMHOT, NUMHOT, ADRHOT, CATHOT, NUMCHA, CATCHA, DATDEBDIS, DATFINDIS) NOMSTA et NUMSTA sont respectivement le nom et le numro de la station ; NOMHOT, NUMHOT, ADRHOT et CATHOT sont les caractristiques de l'htel ; NUMCHA et CATCHA sont les numro et catgorie de la chambre. DATDEBDIS et DATFINDIS caractrisent les dates de dbut et de fin d'une priode de disponibilit de chambre. SAISON (TYPSAI, DATSAIDEB, DATSAIFIN, NUMSTA) TYPSAI dfinit le type de saison, les deux dates caractrisent le dbut et la fin de la saison. RESERVATION (ETATRES, NUMRES, DATDEBRES, DATFINRES, NUMDEM, DATRES, NUMHOT, NUMCHA, NUMCLI, NOMCLI, ADRCLI) ETATRES dtermine l'tat de la rservation (OK, ANNULE,...). NUMRES est le numro identifiant la rservation dfini pour la priode (DATDEBRES, DATFINRES) la date DATRES et en rponse la demande de numro NUMDEM ; la rservation est passe par un client identifi par NUMCLI (numro) et caractris par NOMCLI (nom) et ADRCLI (adresse). TARIF (NUMCHA, NUMHOT, NUMSTA, DATSAIDEB, DATSAIFIN, PRIXCHA) PRIXCHA est le prix de nuite de la chambre de numro NUMCHA dans l'htel de numro NUMHOT appartenant la station de numro NUMSTA, entre les dates DATSAIDEB de dbut de saison et DATSAIFIN de fin de saison On demande : - dtudier chacune des relations proposes, de prciser les dpendances fonctionnelles qui existent entre leurs attributs et de les transformer, si besoins est, en 3me forme normale, - de vrifier que la collection des relations en 3me forme normale obtenue prcdemment est cohrente par rapport lnonc et la complter si ncessaire, - dajouter une collection de contraintes d'intgrit.

21

PRTS BANCAIRES
On vous soumet les deux relations suivantes : CLIENT(ncli, ncompte, nomcli, nagence, adrcli, telcli, responsable, ntypecompte, libelletypecomte, legislationcompte, solde, datesolde, adragence, telagence) OPERATIONBANCAIRE(nop, nvirement, montntop, typeop, natureop, dateeffetop, jourdumois, comptesource, comptecible) Les donnes permettent de grer les comptes des clients d'une banque parisienne compose de plusieurs agences. On s'intresse dans cette base de donnes mmoriser les oprations bancaires effectues sur les comptes de la banque ainsi que la dclaration associs ces comptes. Un client a un numro unique (ncli), un nom (nomcli), une adresse (adrcli) et un tlphone (telcli). Un client peut avoir plusieurs comptes. Un compte est identifi de manire unique par le numro de compte (ncopmpte) et le numro d'agence (nagence). Une agence est dfinie au sein de la banque par un numro (nagence), une adresse (adragence) et un tlphone (telagence). Un compte appartient un type de compte (compte courant, compte pargne, codvi, plan d'pargne logement, etc.). Le type de compte est caractris par un code (ntypecompte), un nom (libelletypecompte) et un texte de lgislation du compte (legislationcompte). Un compte peut tre partag par plusieurs clients. La base de donnes doit mmoriser les diffrents soldes d'un compte (solde, datesolde). Les oprations bancaire effectues sur un compte sont mmorises. Une opration bancaire est dfinie par un numro unique (nop), un montant (montantop) avec une date d'effet (dateeffetop), un type d'opration (typeop) dont la valeur est "dbit" ou "crdit" et une nature d'opration (natureop) permettant de mentionner si l'opration est faite par un chque, des espces, un virement ou la carte bleue. Une opration bancaire peut tre gnre automatiquement partir d'une dclaration de virement effectue par le client. Une dclaration de virement est dfinie par un numro unique (nvirement) et mentionne deux comptes de la banque (comptesource, comptecible). Le client doit dterminer le jour d'effet dans le mois du virement (jourdumois). On vous demande: 1- De construire le graphe des dpendances fonctionnelles lmentaires et directes. 2 - D'en dduire la collection des relations en 3 FN 3 - De donner la description SQL de la collection en intgrant les contraintes standards (de nullit, de rfrence et d'unicit). 4 - D'adjoindre les contraintes d'intgrit autres que les contraintes standards en les libellant en franais (par relation)

22

GESTION DU PARC AUTOMOBILE


Il sagit de la gestion du parc automobile dune socit. Voici les attributs qui ont t retenus : 1) Attributs : numro voiture marque voiture nombre de kilomtres parcourus nombre de places passagers nom chauffeur numro chauffeur nombre de kilomtre numro rparation type rparation montant rparation nombre de kilomtre au compteur date du trajet heure de dpart du trajet ville dpart ville arrive numro trajet nombre de personnes transportes numro de garage de rparation distance en kilomtres 2) Relations VOITURE(NOV, MV, KM, PSG) A une voiture on associe son numro de voiture NOV, sa marque MV, le nombre de kilomtres quelle a parcouru KM, le nombre de places disponibles de passagers PSG. CH(NCH, CHAUFFEUR) A un numro de chauffeur NCH, on associe un seul nom du chauffeur CHAUFFEUR. V-CH(NOV, NCH, NKM) Le chauffeur de numro NCH a conduit la voiture de numro NOV pendant tant de kilomtres NKM depuis que la voiture est en service. REPARATION(NOREP, NOV, NOG, TYPEREP, PX, KMCPT) La voiture de numro NOV est mene au garage de numro NOG pour une rparation de numro NOREP et de type TYPEREP ; elle a alors tant de kilomtres au compteur KMCMT. Cette rparation a cot tant PX. TRAJET(NOTRAJ, VILLEDEP, VILLEARR, DATE, HEURE, NBKM) 23

NOV mot MV texte KM numrique positif PSG entier(1,5) CHAUFFEUR texte NCH entier(0,100) NKM numrique positif NOREP entier(0,1000) TYPEREP mot PX numrique positif de FF KMCPT numrique positif DATE (entier(0, 5000), entier(1,12), entier(1,31)) HEURE (entier(0,23), entier(0,59)) VILLEDEP mot VILLEARR mot NOTRAJ entier NBPERSTER entier NOG entier(0,1000) NBKM numrique positif de km (0, 500)

Un trajet de numro NOTRAJ a t effectu la date DATE, le dpart a eu lieu lheure HEURE. Les villes de dpart et darrive sont respectivement VILLEDEP, VILLEARR ; le trajet est de tant de kilomtres NBKM. TR-NOV(NOTRAJ, NOV, NCH, NBPERSTR) La voiture de numro NOV, conduite par le chauffeur de numro NCH, a transport tant de personnes NBPERSTR pour le trajet de numro NOTRAJ. 3) Rgles dintgrit Nous indiquons ci-aprs seulement les rgles dintgrit du champ dapplication qui sexpriment laide de dpendances fonctionnelles :
NOV MV NOV KM NOV PSG NCH CHAUFFEUR NOV, NCH NKM NOREP NOV NOREP NOG NOREP TYPEREP NOREP PX NOREP KMCPT NOTRAJ VILLEDEP NOTRAJ VILLEARR NOTRAJ DATE NOTRAJ, NOV NCH, NBPERSTR NOTRAJ, NCH NOV, NBPERSTR NOTRAJ NBKM NOTRAJ HEURE

Toutes ces dpendances fonctionnelles sont lmentaires. Questions : 1) Construire le graphe des dpendances fonctionnelles. 2) Voici une liste daffirmations concernant le mme champ dapplication. Vous indiquez si elles sont en accord ou en contradiction avec la modlisation propose en justifiant votre rponse. a) Cest toujours le mme chauffeur qui conduit la mme voiture ; b) Lors du trajet, cest toujours la mme voiture que conduit un chauffeur ; c) Lorganisation confie toutes ses voitures rparer un seul garage d) Il existe des trajets dont la distance dpasse mille cinq cents kilomtres ; e) Un cadre de lentreprise qui nest pas un chauffeur peut quand mme conduire une voiture pour un trajet ; f) Un trajet est assur par une seule voiture ; g) Il existe des voitures de plus cinq places pour les passagers. 3) Voici une liste de questions concernant la modlisation. Veuillez y rpondre en justifiant votre rponse. a) Un chauffeur peut-il effectuer plusieurs fois le mme trajet ? b) Deux chauffeurs diffrents peuvent-ils effectuer le mme trajet ? c) Est-ce quun chauffeur peut effectuer plusieurs trajets avec la mme voiture ? d) Est-ce quun trajet peut tre effectu deux dates diffrentes ? e) Un trajet peut-il tre effectu par plusieurs voitures ? f) Peut-on faire des trajets ou les villes de dpart et darrive sont les mmes ? 24

LE CIRQUE GOGOL
On vous demande de normaliser la relation universelle suivante : Cirque (nobjet, nomobjet, nanimal, age, temperature, ndompt, adr, datdeb, datfin, numero, duree, hdeb, hfin, datnumero, comp); Il s'agit d'aider la gestion des numros de domptage au cirque Gogol. nobjet : numro identifiant soit un dompteur soit un animal de manire unique nomobjet : nom d'un objet; en gnral un objet a plusieurs noms nanimal : numro unique d'identification d'un animal age : ge d'un objet temperature : temprature moyenne maintenir pour un animal ndompt : numro unique de dompteur adr : adresse de dompteur; un dompteur a une seule adresse datdeb : date de dbut de priode de dressage d'un animal par un dompteur datfin : date de fin de priode de dressage numero : numro unique de numro de dressage duree : dure d'un numro en minutes hdeb : heure de dbut d'un numro rel hfin : heure de fin d'un numro rel datnumero : date d'un numro rel comp : comportement d'un animal avec un dompteur pendant un numro rel. La base de donnes doit conserver des informations sur les animaux du cirque, sur leurs dompteurs et les numros de dressage prvus et rels. Un animal a un numro unique, plusieurs noms et une temprature ambiante requise. Un dompteur a un numro unique, un nom, une adresse, et un ou plusieurs animaux en dressage pendant une priode donne. Un numro est prvu pour une certaine dure. Les numros rels se droulent des dates donnes et des intervalles donns qui doivent tre mmoriss dans la base de donnes. Un numro fait intervenir plusieurs animaux et plusieurs dompteurs. Un dompteur, pour un numro donn, a un ensemble d'animaux prvus. De mme les numros rels font intervenir plusieurs dompteurs ayant leurs animaux mais il peut y avoir des diffrences entre les animaux prvus et les animaux rels; on souhaite, en outre, conserver quel a t le comportement d'un animal avec son dompteur pendant un numro donn. Les animaux et les dompteurs sont gnraliss par la notion d'objet. Tout animal et tout dompteur est un objet. On vous demande : 1- De construire le graphe des dpendances lmentaires et directes (9points) 2- D'en dduire la collection des relations en 3FN (2points) 3- De donner la description SQL de la collection en intgrant les contraintes standards (4points) 4- D'adjoindre les contraintes d'intgrit autres que les contraintes standards en les libellant en franais (2points)

25

LOCATIONS DE VOITURES
On vous demande de modliser les donnes utiles la gestion des locations et des rservations dune agence de location de voitures. Les locations sont instantanes mais les rservations sont par anticipation. On rserve une voiture pour une priode du futur. La rservation porte sur une catgorie de voitures tandis que la location porte sur une voiture. Une voiture est caractrise par son numro dimmatriculation, sa puissance, sa marque et son nombre de kilomtres. Sa puissance la place dans une catgorie qui dtermine le prix de location journalier et le prix au kilomtre. La location est faite pour une priode qui peut tre tendue. La base doit mmoriser la priode prvue mais aussi la date de retour relle de la voiture au loueur. Le prix de location dpendant du nombre de kms parcourus, linformation mmorise pour une voiture loue comporte le nombre de kms au dbut de la location et la fin. Une rservation porte sur une catgorie de voiture, pour une priode donne. La rservation comme la location sont faites par un client. Un client a un numro, un nom, une adresse fixe mais une adresse temporaire pour une location ainsi quun mode de paiement propre la location. Lorsquune location est effectue en rponse une rservation, la rservation est efface de la base. Pour grer au mieux les rservations du futur, la base de donnes maintient jour les disponibilits par catgorie et unit de voiture dans chaque catgorie. Par exemple, lunit rfrence 1 de la catgorie haute gamme est disponible du 20/02 au 03/03 et du 04/04 au 30/05 etc. On vous demande : 1- Didentifier les attributs et de leur donner une dfinition sommaire 2- De construire le graphe des dpendances fonctionnelles lmentaires et directes. 3- Den dduire la collection des relations en 3FN et de prouver que vos relations sont bien des 3FN.

26

LES EMPLACEMENTS DES MARCHS


La ville de Paris loue des vendeurs des emplacements dans les marchs parisiens. Elle vous demande de concevoir une base de donnes qui laide grer les locations. La ville comporte plusieurs endroits, places, alles, etc qui servent la tenue de marchs. Chaque march a un numro unique (nmarche), une adresse (adrm) et est caractris par le numro de larrondissement (narrondissement). Lespace rserv un march est organis en lots. Un lot est numrot mais les numros ne sont uniques que dans le contexte du march. Un lot a une surface (surfl) et une description (descl). Les lots sont lous des vendeurs. Chaque vendeur est repr par un numro unique (nv), son nom (nv), son adresse (adrv) et son tlphone (telv). Un vendeur obtient un contrat de location pour un ou plusieurs lots sur un mme march et en gnral pour plusieurs marchs. Le contrat est pass pour une saison. Il y a deux saisons dans lanne (numrotes 1 et 2). La ville souhaite suivre les contrats de manire historique. Le tarif appliqu pour la location est dgressif. Plus le nombre de m2 est important, plus le prix est faible. La base de donnes doit tenir jour une table des prix qui fixe le prix au m2 (pm2) pour la fourchette min, max de m2 lous. Elle dite une facture par saison de location pour chaque vendeur. Une facture a un numro unique (nf), une date (datef), la rfrence de la saison et le montant total (monttot). La facture comporte autant de lignes que demplacements lous sur les diffrents marchs. Il sagit donc dune facture groupe pour toutes les locations dun vendeur pour une saison donne. Chaque ligne a un numro dordre dans la facture (nlf), fait rfrence lemplacement lou du march et donne le montant de la location (montlf). La ville tient un compte par vendeur. Chaque compte a un numro unique (ncompte) et donne le solde courant du vendeur. On vous demande de : 1- Construire le graphe de dpendances fonctionnelles lmentaires et directes. 2- Fournir la collection de relations en 3 me forme normale en soulignant les cls et cls trangres.

27

LA BIBLIOTHQUE
Soit le systme d'information dcrit par les relations en 3me forme normale suivantes : livre(nlivre, titrelivre, datelivre, langue, nbpages,nediteur,ntheme) diteur(nediteur, nomediteur, adrediteur) theme(ntheme, nomtheme) index(mot-cle, nlivre) auteur(nlivre, numecr) crivain(numecr, nomecr, datenais, pays) bibliothque(nbibli, adrbibli, telbibli) ouvrage(nbibli, nlivre, nordre, dateachat, tat) emprunteur(nemp, nomemp, adremp, telemp, dateadhe, nbemp, nbretards) emprunts (nbibli, nlivre, nordre, dateemp, daterendu, nemp) L'tat d'un ouvrage peut tre BON, MOYEN ou MAUVAIS nemp est le nombre d'emprunts effectus depuis l'adhsion (dateadhe); nbretards est le nombre de retard de restitution d'emprunts enregistrs depuis l'adhsion. Rdiger les requtes rpondant aux questions suivantes: 1 - Liste des numros de livres publis chez EYROLLES 2 - Liste des noms des thmes des livres publis chez EYROLLES 3 - Liste des numros de thmes traits par l'crivain OLYMPE DE GOUGES. 4 - Liste des livres indexs par POSIE et par ALGORITHMIQUE (les deux mots-cls simultanment). 5 - Liste des mots-cls associs uniquement au thme INFORMATIQUE 6 - Liste des mots-cls qu'on ne trouve jamais chez l'diteur MAGNARD. 7 - Liste des diteurs publiant dans toutes les langues prsentes dans le systme. 8 - Liste des livres (tous les attributs de chaque livre) de la bibliothque situe l'adresse 15, rue Cujas, 75005 PARIS) 9 - Liste des livres (nlivre) que la bibliothque dont le numro de tlphone est "12345678" est la seule proposer 10 - Liste des noms et adresses des emprunteurs ayant emprunt "La peste" de Camus ET "Le monde des non-A" de Van Vogt 11 - Noms et adresses des emprunteurs n'ayant jamais emprunts "La peste" de Camus ni "Le monde des non-A" de Van Vogt

28

LES COURSES DE BATEAUX


La base de donnes comporte les relations suivantes : bateau(nbat, nombat, sponsor) course (ncomp, nomcomp, datcomp, prixcomp) rsultat (nbat, ncomp, score) Un bateau a un numro unique (nbat) , un nom (nombat) et un sponsor (sponsor). Une course a une cl (ncomp), un nom (nomcomp), une date (datcomp) et un montant de prix pour le gagnant (prixcomp). Un tuple de la relation rsultat dcrit l'association entre un bateau et une course et le score de ce bateau dans la course (score). On vous demande de rpondre aux questions suivantes. Trouver : 1) les noms des courses auxquelles a particip le bateau nomm "Ville de Paris" et dont le prix est suprieur 200 000 Fr.. 2) les noms des bateaux qui ont t classs 1 (score = 1) au moins une fois en 1999 et classs au moins une fois troisime en 1998 3) les bateaux qui nont particip aucune course en 1999 4) les bateaux qui ont le mme sponsor que le bateau nomm Ville de Paris 5) les numros des bateaux qui ont toujours t class avant le rang 4 6) les numros des bateaux qui ont particip toutes les courses 7) les numros des bateaux qui ont particip toutes les courses auxquelles "Ville de Paris" a particip 8) les numros des bateaux qui n'ont jamais t ni premiers ni derniers dans une course ainsi que ceux qui n'ont jamais couru. 9) la dernire course auquel le bateau Ville de Paris a particip

29

LE VIDOCLUB
La base de donnes du Vidoclub comporte les relations suivantes : ABONNE( nab, nomab, prenomab) EMPRUNT (nab, ncass, datedeb, datefin) CASSETTE (ncass, nfilm, dateachat, tat) FILM (nfilm, titre, descriptif, anneProduction, ralisateur) Le domaine de valeur de lattribut tat de la relation CASSETTE est { emprunt ou disponible } Questions On vous demande de rpondre aux questions suivantes. Trouver la : 1) Liste de toutes les cassettes prsentes dans le magasin (vous fournirez le numro de cassette et le titre du film). 2) Liste des cassettes qui ont t lobjet dun emprunt compris entre le 1/05/99 et le 20/05/99 (vous fournirez le numro de cassette et le titre du film). 3) Liste des cassettes prsentes dans le magasin le 15/05/99 (vous fournirez le numro de cassette et le titre du film). 4) Liste des films qui ont t emprunts par tous les abonns (vous fournirez le titre du film). 5) Liste des abonns (numro dabonn) qui ont emprunt tous les films raliss par Patrice Leconte . 6) Liste des dernires cassettes achetes par film (vous donnerez le numro de cassette, le titre du film et la date dachat). Rpondre, en SQL seulement, aux questions suivantes : 7) Lister les films disponibles dans le magasin avec le nombre de cassettes. 8) Donner le nombre demprunts par film. 9) Calculer la dure moyenne demprunt par film.

30

LES AVENTURES DE VIL COYOTE

Vous connaissez tous les terribles aventures de Vil Coyote et de Bip-Bip. Dans ce dessin anim, le coyote (Carnivorous Vulgaris) essayait toujours de soffrir un bon repas en attrapant le road runner (Accelerati Incredibilus). Celui-ci tait tellement rapide quil russissait toujours schapper en faisant son clbre cri Beep Beep ! . Pour tenter de lattraper, Vil Coyote commandait un certain nombre de piges lusine Acm mais ceux-ci se retournaient systmatiquement contre lui. Nous avons inventori ici les diffrents pisodes de la srie, les piges qui y sont utiliss et les accessoires faisant partie de ceux-ci. Les auteurs sont galement rpertoris dans la base de donnes. Piege (npiege, nompiege, descriptionP, efficacit-relative) Apparition (npiege, nepisode, nordre, efficacit-relle) Episode (nepisode, date-premiere-diffusion, acceuil-public) Accessoire (nacc, nomacc, descriptionA) Utilisation (npiege, nacc) Crateur (ncreateur, nomcreateur, prenom, age) Auteur (nepisode, ncreateur) Interprtez les requtes suivantes en exprimant leur signification en langage naturel. 1.
npiege, nepisode

npiege = npiege

Piege nepisode 15 Apparition

2.
Select A.nacc, A.nomacc From Accessoire A, Utilisation U, Piege P Where A.nacc = U.nacc And U.npiege = P.npiege And P.nompiege = tunnel sous montagne ;

31

3.
nompiege, descriptionP

npiege = npiege

npiege Piege npiege

Piege

efficacit-relle < 20%

Apparition

4.
Select A.* From Accessoire A Where A.nacc not in (Select U.nacc From Utilisation U, Apparition A, Episode E Where U.npiege=A.npiege And A.nepisode=E.nepisode And E.date-premiere-diffusion < 01/05/0990) ;

5.
nacc, nomacc

nacc = nacc

nacc nacc

Accessoire

nacc = nacc

npiege = npiege

Utilisation npiege = 15 Apparition nompiege = Levier de rocher

Piege

32

6.
Select C.nomcreateur, C.prenomcreateur From Createur C, Auteur A Where C.ncreateur = A.ncreateur And A.nepisode = 46 And C.ncreateur in (Select A. ncreateur From Auteur A, Apparition App, Utilisation U, Accessoire Acc Where A.nepisode = App.nepisode And U.npiege = App.npiege And U.nacc = 489);

7.
nomcreateur, prenomcreateur

ncreateur=ncreateur

nepisode = nepisode

Createur Auteur

npiege = 4 npiege=95

Apparition

8.
nomacc

nacc=nacc

nacc Accessoire Utilisation

Accessoire

Nacc,nepisode
npiege=npiege

Apparition

33

9.
Select P.nompiege From Piege P Where not exists (Select E.* From Episode E Where E. acceuil-public 75% And not exists (Select A.* From Apparition A Where A.nepisode = E.nepisode And A.npiege = P.npiege));

10.
Select A.nepisode, count (distinct U.nacc) From Utilisation U, Apparition A Where U.npiege=A.npiege Group by A.nepisode;

11.
Select P.nompiege From Piege P, Episode E, Apparition A Where E.date-premiere-diffusion 01/01/2002 And E.nepisode = A.nepisode And A.npiege = P.npiege Order by P.nompiege Desc;

12.
Select P.npiege From Piege P, Apparition A Where P.efficacit-relative=75% And A.npiege = P.npiege Group by P.npiege Having avg (A.efficacit-relle)=5%;

34

GESTION DE COMMANDES

La base de donnes relationnelles "GESCOM" est dcrite par les schmas de relations suivantes: CLIENTS (CODECLl, NOMC, CATC, VILC) ARTICLES (CODEART, NOMA, COULEUR, QTESTK) COMMANDE (NUMCOM, CODECLI, DATECOM) DETAILCO (NUMCOM, CODEART, QTECOMD) Les donnes gres par l'entreprise contiennent des informations concernant: - les clients identifis de manire unique par leurs codes, - les articles identifis de manire unique par leurs codes, - les commandes identifies de manire unique par leurs numros et - le dtails des commandes, chaque ligne de la table DETAILCOM reprsente le numro d'une commande, le numro de l'article command et la quantit commande. La combinaison (NUMCOM, CODEART) permet d'identifier chacune des lignes de manire unique.

Dictionnaire de Donnes:

CODECLl NOMC CATC VILC CODEART NOMA COULEUR QTESTK NUMCOM DATECOM QTECOMD

Code du client Nom du client Catgorie du client Ville du client (son adresse) Code de l'article Nom de l'article Couleur de l'article Quantit en stock de l'article Numro de la commande Date de la commande Quantit commande

CARACTRES(4) CARACTRES(10) NUMRIQUE(1) CARACTRES(10) CARACTRES(4) CARACTRES(10) CARACTERES(10) NUMRIQUE(3) NUMRIQUE(6) DATE NUMRIQUE(3)

35

On vous demande d'crire les requtes suivantes: 1. Donnez la liste des codes (CODECLI) et des catgories (CATC) de tous les clients. 2. Donnez la liste des clients (CODECLI, NOMC, CATC, VILC) dont la catgorie est 3. 3. Donnez la liste des numros des clients (CODECLI) qui habitent Paris, dont la catgorie est suprieure 1 et qui ont commands des clous. 4. Donnez la liste des articles (CODEART, NOMA) de couleur mauve qui n'ont jamais t commands. 5. Donnez la liste des noms des clients (NOMC) ayant fait au moins une commande en Septembre 1994. 6. Donnez la liste des noms des articles (NOMA) qui figurent sur la commande de numro 940817 en quantit suprieure 10. 7. Donnez la liste des noms des articles (NOMA) qui figurent sur les commandes du mois de Septembre 1994 mais pas sur celles du mois d'Aot. 8. Donnez la liste des noms des articles (NOMA) commands par les clients de Paris. 9. Donnez la liste des codes des clients (CODECLI) qui n'ont pas fait de commande en Septembre 1994. 10. Donnez la liste des clients ayant effectu plus de deux commandes ayant chacune plus de 20 articles diffrents commands 11. Donnez la liste des noms des clients (NOMC) ayant effectus au moins une commande en Aot et en Septembre 1994. 12. Donnez la liste des codes des clients (CODECLI) Parisiens qui ont command plus de 300 clous au total en 1994. 13. Donnez la liste des dernires commandes effectues par les clients Parisiens 14. Donnez la liste des noms des clients (NOMC) ayant commands tous les articles rouges. 15. Donnez la liste des noms de clients (NOMC) n'ayant jamais command d'article rouge 16. Donnez le numro de la dernire commande de clou effectue par le client de numro C003. 17. Donnez la liste des produits commands par tous les clients 18. Donnez la moyenne des quantits en stock pour l'ensemble des articles. 19. Donnez la liste des noms des articles (NOMA) dont la quantit en stock est suprieure la moyenne. 20. Donnez le nom du client qui a command le plus de clou en 1994.

36

LES COURSES DE CHEVAUX


Soit le Systme d'Informations Hippiques dcrit par les relations en 3FN suivantes: cheval(NUMCH, DATNAIS, NOMCH, NUMCHPERE, NUMCHMERE) curie(NUMEC, NOMPROP, NOMEC) couleur(NUMEC, COULEUR) propritaire(NUMCH. date-entre-curie, NUMEC) haras(NUMH, NOMH, ADRH, TELH) entranement(NUMCH, date-entre-haras, NUMH) jockey(NUMJOCK, NOMJOCK, ADRJOCK) course(NUMCOUR, NOMCOUR, DATECOUR, HEURECOUR, TYPECOUR) rsultat(NUMCH, NUMCOUR, NUMJOCK, SCORE) jockey-curie(NUMJOCK, date-entre-curie-jock, NUMEC) Contraintes d'intgrits: domaine(NUMCHPERE) = domaine(NUMCH) domaine(NUMCHMERE) = domaine(NUMCH) En utilisant les langages, dfinir les 10 ensembles suivants (si cela est possible): 1. Liste des jockeys (nom et adresse). 2. Liste des courses de type "handicap-1600m" (nom, date, heure). 3. Liste des rsultats de la course "Prix de Houdan" du 6 mars 1987 (N cheval, n jockey, score). 4. ID 3, mais: (nom du cheval, nom du jockey, et score). 5. Liste des vainqueurs (score=1) du "Prix de l'Arc de Triomphe" depuis 1950 (nom du cheval et date). 6. Liste des chevaux (noms), avec le nom de leur propritaire actuel (nom de l'curie). 7. Liste des chevaux (numros) ayant toujours appartenu l'curie n 357. 8. Liste des chevaux (noms) ayant toujours t dans les 4 premiers l'arrive des courses de type "steeple-chase-3500m" auxquelles ils ont particip. 9. Liste des chevaux (noms) n'ayant jamais eu la couleur jaune, ni la couleur bleu dans les couleurs des curies les ayant possds.

37

CARAVANE DE CHAMEAUX
La base de donnes comporte les relations suivantes: caravane (ncar, durecar, noasisdep, noasisarr, datdcar, datarrcar) escale (ncarf, nesc, duresc, datdesc, datarresc, noasis) oasis (noasis, nomoasis, positiongo) transport (ncar, nchameau) chameau (nchameau, nom, propchameau) Une caravane a une dure (durecar) une date de dpart (datdcar), une date d'arrive (datarrcar), une oasis de dpart (noasisdep), une oasis d'arrive (noasisarr), un ensemble d'escales et un ensemble de chameaux. Chaque escale est identifie par un numro d'ordre relatif la caravane (nesc) et concerne un arrt effectu a une oasis dont on connat: la dure d'arrt (duresc), l'horaire d'arrive (datarresc) et l'horaire de dpart (datdesc). On vous demande de rpondre aux questions suivantes.

1: les numros de caravanes auxquelles a particip le chameau "Ali" et qui passe "Ouarzazate". 2: la dernire escale de chaque caravane. 3: les oasis qui apparaissent toujours comme la dernire escale d'une caravane 4: les numros de chameaux qui ont particip toutes les caravanes. 5: les numros de chameaux qui ont particip toutes les caravanes auxquelles "Ali" a particip. Rpondre, en SQL seulement, aux deux questions suivantes: 6: trouver les numros de caravanes qui ont plus de 7 escales. 7: trouver les escales qui apparaissent comme dernire escale plus de 2 fois.

38

LES MARCHS
Soit les relations suivantes (les cls sont soulignes) : Commerant(ncom, nomcom, type-produit) March(nmar, nommarch, ville) Emplacement(nmar, nemp, surface) Location(ncom, nmar, nemp, date, prix) Un commerant peut louer un ou plusieurs emplacements dans un march une date donne. Les numros d'emplacements sont relatifs au march. Rpondre aux questions 1 5. 1) Lister les noms et numros des commerants qui ont vendus des produits de type "fromage" sur le march parisien de nom "Turbigo". 2) Lister les noms, numros et type-produits des commerants n'ayant jamais effectus de location. 3) Lister les noms des commerants ayant effectus au moins une location la fois au march "Turbigo" ET au march "Aligre", ces deux marchs sont Paris. 4) Lister les emplacements (avec le nom du march et la ville o ils se trouvent) qui n'ont jamais t lous par des commerants vendant des produits de type "fromage" ou "viande". 5) Lister les marchs de la ville de "Lyon" dont des emplacements ayant une surface suprieure 20 m2 n'ont pas t lous le 20/10/95 mais ont t lous le 25/10/95. Pour les questions 6 10, utiliser seulement le langage SQL. 6) Calculer la surface totale des emplacements du march parisien "Turbigo". 7) Calculer le nombre de marchs parisiens pour lesquels il y a eu plus de 10 locations le 20/10/95. 8) Calculer la moyenne du prix de location des emplacements du march parisien "Turbigo". 9) Lister les noms des commerants ayant effectus au moins une location dans tous les marchs parisiens. 10) Augmenter de 10% les prix de tous les emplacements des marchs parisiens ayant une surface suprieure 20 m2.

39

GRAND PRIX
La base de donnes concerne le championnat de formule 1 pour la saison 2002 ECURIE(numEcurie, nomEcurie, totalPointEcurie, numPlace) PILOTE(numPilote, nomPilote, prnomPilote, numEcurie, pays, nbkm, nbtours) GRANDPRIX(numGP, nomGP, numCircuit, dateGP) CIRCUIT(numCircuit, nomCircuit, Pays, nbkm, nbtours) CLASSEMENT(numGP, numPilote, numPlaceDepart, numPlaceArrive)

On vous demande de rpondre aux questions suivantes. 1) Donnez les pilotes qui sont partis dans les cinq premiers au grand prix de France et appartiennent lcurie FERRARI . 2) Donnez les pilotes (nom, prnom et numro) qui ne sont jamais arrivs dans les cinq premiers dans un grand prix 3) Donnez les pilotes (nom, prnom et nom de lcurie) qui sont toujours arrivs dans les trois premiers 4) Donnez les pilotes (nom, prnom et nom de grand prix) qui ont eu dans au moins un grand prix une place de dpart suprieure leur place darrive 5) Donnez les pilotes qui nont jamais eu une place de dpart suprieure leur place darrive

En SQL seulement : 6) Calculez pour chaque pilote le nombre de grands prix o il est class premier 7) Calculez pour chaque curie le nombre de grand prix o lun de ses pilotes est class premier 8) Donnez les pilotes qui ont particip au grand prix de France dans leur ordre de classement darrive

40

PARTIEL ISI4 / BASES DE DONNES - JANVIER 2009 DEVOIR MAISON 2009-2010

Exercice 1 (Normalisation) : Stargate

Les responsables du projet Stargate dcident dinformatiser compltement les missions de leurs quipes, ce qui permettra de supprimer tous les dossiers papiers avec lesquels ils travaillent depuis des annes. On veut connatre les membres de chaque quipe sous leurs numro-matricule, nom, prnom, grade et fonction. Chaque personne nappartient qu une seule quipe de rfrence. On veut historiser les promotions des diffrents membres de lquipe en conservant les dates lesquelles leurs grades voluent. Chaque quipe est identifie par un code spcifique (SG1, SG2, SG3) et a une identification prcise pour revenir la base et ouvrir liris (systme de protection de la porte). Les missions se font une date de dbut prcise, peuvent concerner plusieurs quipes et correspondent une plante prcise identifie par ses coordonnes. Une quipe ne peut avoir quune mission par jour. Chaque mission donne lieu un rsultat qui doit tre enregistr dans la base. Tous les membres dune quipe ne participent pas obligatoirement toutes les missions de celle-ci. Des membres dautres quipes peuvent galement parfois participer des missions dune quipe. La base de donnes doit donc pouvoir savoir quels sont les membres du personnel qui participent chacune des missions. On veut pouvoir connatre plusieurs renseignements sur les plantes visites, comme son nom local, une description de la socit prsente et le nom dun contact privilgi pour le projet. STARGATE (Code-quipe, nom-local, numro-matricule, fonction, rsultat, date-dbut, contact, grade, coordonnes, nom, prnom, date-promotion, description, identification) Faire le Graphe de dpendances fonctionnelles, dessiner les nuages et en dduire le schma de relations.

41

Exercice 2 (Langages) : Les confrences

Soient les relations suivantes : Personne (numro, nom, prenom, sexe) Confrence (nom, anne, nombre-participants, pays, ville) Inscription (numro, nom, anne) Donner les requtes suivantes en langage algbrique ou en SQL selon ce qui est spcifi. 1) Quelles sont les confrences auxquelles Luc PromeneurDuCiel a particip (nom, anne) ? (AR) 2) Quels sont les personnes ayant particip toutes les confrences dans la ville de Tatooin (numro, nom, prnom) ? (SQL) 3) Quelles sont les confrences o nont jamais assist des personnes du sexe masculin, quelle que soit lanne o a eu lieu cette confrence (nom) ? (AR) 4) Combien existe-til de confrences diffrentes ? (SQL) 5) Quels sont les confrenciers ayant assist plus de 10 confrences ? (SQL) 6) Quelles sont les confrences ayant dj eu plus de 100 participants lune de leurs occurrences et ayant dj eu lieu dans la ville de Tatooin (nom) ? (AR)

42

También podría gustarte