Vous êtes sur la page 1sur 29

T RAVAUX DIRIGES

DE B ASES DE D ONNEES

1. MODELE ENTITE/ASSOCIATION

2. MODELE RELATIONNEL ET ALGEBRE

11

3. CALCUL RELATIONNEL

17

4. S.Q.L.

19

5. DEPENDANCES FONCTIONNELLES

22

6. CONCEPTION DE SCHEMA ET FORMES NORMALES

24

Edit par :
TALEL ABDESSALEM

Septembre 2011

REMERCIEMENTS :
Nous tenons remercier F. Bancilhon, C.Delobel, M-O. Cordier, A. Doucet, S. Ganarski, MC. Heydemann, G. Jomier, M. Manouvrier, E. Quesne, M.Picard, D. Teulat, et J. Ullman qui
retrouveront certaines de leurs propositions dans ces exercices.

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

1. Modle Entit/Association
Exercice 1.1 : "Speedo Finn"
Les organisateurs de la clbre course au large Speedo Finn voudraient crer une base de donnes
permettant de retrouver toutes les informations relatives l'organisation de la course et sa scurit et
aussi rpondre l'insatiable curiosit des badauds.
La course se droule en plusieurs preuves sanctionnes chacune par un classement. Chaque preuve
dbute et se termine dans un port, le port d'arrive pouvant tre diffrent du port de dpart, cependant
il n'y a jamais plus d'une preuve par jour. Chaque bateau est financ par un ou plusieurs sponsors et
arm d'un quipage compos d'un skipper et d'quipiers. Le skipper d'un bateau ne peut changer d'une
preuve l'autre de la course, mais cette contrainte ne touche pas les quipiers, qui en revanche ne
changent pas de bateau au cours d'une preuve.
La base de donnes doit permettre de rpondre, parmi d'autres, aux questions suivantes:

Quels sont les sponsors d'un bateau ?

Quel est le montant de la subvention d'un sponsor particulier un bateau particulier ?

Quels bateaux sont engags dans l'preuve qui dbute le 27 avril ?

Quels sont les quipiers du bateau qui a gagn la premire preuve ?

Sur quels bateaux de plus de 12 mtres y a-t'il un quipier mdecin ?

Proposez un modle entit/association de cette application. Dduisez le schma relationnel de la base


de donnes.

Exercice 1.2 : "Salles de concert"


On veut construire l'aide du modle Entit-Association le schma relationnel de la base de donnes
d'une socit qui gre des salles de concert. Les salles de concert sont situes dans diffrents
tablissements, chacun pouvant disposer de plusieurs salles de concert. On connat pour chaque salle
la capacit en nombre de places, toutes les places tant de la mme catgorie. Plusieurs uvres
musicales peuvent tre auditionnes lors de chaque concert. La base de donnes doit permettre de
rpondre des questions comme:

Quel est l'auteur (ou quels sont les auteurs) d'une uvre musicale ?

Quels musiciens participent un concert ?

Quel est le rle d'un musicien dans une uvre donne lors d'un concert ?

O et quand a lieu un concert ?

Pour un concert combien de places sont rserves ?

On demande d'tablir un schma Entit-Association de cette application.


On en dduira le schma relationnel de la base de donnes correspondante.

Dpartement Informatique et Rseaux

-5-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 1.3 : "Airix"


On veut tablir le modle Entit-Association de la compagnie arienne AIRIX afin d'implanter une
base de donnes o seront stockes des informations relatives aux horaires des vols, aux passagers et
leurs rservations, au personnel affect aux vols prvus. Parmi les membres des quipages on
s'intressera particulirement aux pilotes et leur habilitation piloter certains types d'avion. Trs
concrtement la base de donnes devra permettre de savoir:

Comment joindre tous les passagers d'un vol,

Quels sont les membres d'un quipage,

Quel avion est affect un voyage particulier,

Pour quels type d'avions est brevet un pilote,

Quels sont les horaires des avions Paris-Caracas (horaire hebdomadaire), etc.

Le personnel de la compagnie AIRIX est identifi par un numro (NUMEMP) et dcrit par son nom
(NOM), son prnom (PRENOM), son adresse (ADRESSE), son numro de tlphone
(NTELEPHONE) et son salaire mensuel (SALAIRE).
Parmi les membres du personnel, on distingue les pilotes afin d'indiquer les brevets qu'ils possdent,
diffrents renseignements professionnels et de prciser les avions qu'ils peuvent piloter avec ces
brevets.
Chaque appareil possd par AIRIX est dot d'un numro de srie (NUMSER) propre la compagnie
Pour chaque appareil on connat aussi l'avionneur et le numro de modle (ces deux informations
constituent ce que l'on appelle l'avion: ex BOEING 747).
Les passagers sont reprs par leur nom (PNOM), leur adresse (PADRESSE) et leur numro de
tlphone (PTELEPHONE). On connat aussi les dparts (DEPARTURE) sur lesquels on les a
enregistrs (BOOKED-ON).
Un dpart est un vol une certaine date (DATE).
Chaque vol fait l'objet d'au moins un dpart.
Les vols sont reprs par un numro (NUMVOL), une origine (SOURCE) et une destination (DEST)
et diffrentes villes intermdiaires (chaque couple de villes relies dfinit un tronon). Pour chaque
ville desservie on connat l'heure d'arrive (ARR-TIME) et l'heure de dpart (DEP-TIME) du vol
considr.
Les avions qui peuvent tre affects un vol sont connus.
Pour chaque tronon correspondant un dpart - un pilote doit obligatoirement avoir t dsign - un
appareil doit obligatoirement avoir t affect.
On dduira de la modlisation entit-association le schma relationnel de la base de donnes. Pour
simplifier, dans une premire tape de l'exercice, on supposera que chaque vol n'a qu'une tape. On
compltera ensuite en supposant qu'un vol peut avoir plusieurs tapes et que passagers et quipage
peuvent changer en cours de voyage.

Dpartement Informatique et Rseaux

-6-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 1.4 : "La socit W"


Organisation gnrale de l'entreprise : les usines du groupe industriel W sont situes dans certaines
villes de certains dpartements gographiques. Il en est de mme des dpts qui sont distincts des
usines. Les produits fabriqus et distribus par le groupe W ont un numro, une dsignation et un prix
unitaire. Les clients ont chacun un numro qui les identifie, chacun est domicili dans une ville.
Chaque dpt a des produits en stock en quantit connue. Une partie de ces stocks peut tre rserve
pour satisfaire des commandes de clients en instance. Chaque usine a des produits en cours de
fabrication en quantits connues. La date de disponibilit d'une fabrication est connue. Chaque
dpartement est li d'autres dpartements (frontire commune). Chaque fabrication est destine des
dpts. La rpartition des quantits destines chaque dpt est connue. Les dpts ne peuvent tre
aliments que par des usines gographiquement lies. Pour chaque quantit d'une fabrication destine
un dpt, on connat la part dj rserve pour des commandes clients.
Traitement des commandes clients : une commande est passe par un client une certaine date. Elle
indique la date limite de livraison et est repre par un numro. Un produit ne peut apparatre qu'une
seule fois dans une commande et on en connat la quantit commande. Pour chaque commande
arrivant dans le groupe, on recherche si elle peut tre totalement prise en portefeuille, sinon la
commande est refuse. Les rgles de prise en compte d'une commande sont les suivantes:

chaque produit de la commande ne peut provenir que d'un dpt gographiquement li au


dpartement du client .

la quantit totale d'un produit doit tre soit disponible en stock, soit attendue par le dpt en
provenance d'une usine une date antrieure la date limite fixe par le client (on doit
connatre l'origine exacte du produit au moment de la prise de commande) .

lorsqu'une commande peut tre livre, c'est--dire lorsque tous les produits sont
effectivement en stock, elle change de statut et devient livrable. Une date de livraison est
alors choisie (elle doit tre antrieure la date limite).

Etude : On veut construire une base de donnes relationnelle afin de grer la socit W et ses
commandes. Pour cela on demande:
1. d'tablir le modle Entit-Association correspondant.
2. d'en dduire un schma relationnel

Exercice 1.5 : "Invitations et rceptions"


Je veux concevoir une base de donnes personnelle propos d'invitations et de rceptions que j'ai
organises. Lorsque j'ai organis une rception, j'enregistre dans ma base de donnes la liste des
personnes prsentes et la date (jour, mois, anne) de la rception.
Sur les personnes je connais les informations suivantes: nom, prnom, sexe, opinion politique, adresse,
numro de tlphone personnel et ventuellement professionnel. J'enregistre aussi:

leurs gots. Une personne peut tre passionne par un ou plusieurs domaines: peinture,
opra, jazz, littrature, plonge sous-marine, rafting ...

les vins qu'elles aiment boire,

les liens entre personnes, du type: mariage, concubinage, parent-enfant etc. et les inimitis.

Ma base contient aussi des informations sur les menus servis aux invits. Pour cela j'ai dfini un
ensemble de plats pris comme rfrence dans un catalogue. Pour chaque plat, je connais son nom et sa
nature: entre, viande, poisson, gibier, fromage, dessert ... A un repas on sert des vins. Un vin est
caractris par un nom (de terroir ou de cpage), un millsime, une rgion et un type (blanc sec, blanc
liquoreux, gris, rouge, ros ...). Les noms de terroir ou de cpage sont extraits d'un catalogue pour
avoir une liste de rfrence.
Dpartement Informatique et Rseaux

-7-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Enfin je dispose dans ma base de donnes d'informations sur les affinits entre les vins et les plats. Par
exemple je veux enregistrer des faits comme avec du crottin de Chavignole le Sancerre blanc est
parfait, ou un Bourgogne aligot convient tout fait au saumon fum ou encore des phrases plus
gnrales comme un blanc sec d'Alsace accompagne trs bien un munster.
Proposez un modle Entit-Association de cette application. Dduisez-en le schma de la base de
donnes relationnelle correspondante.

Exercice 1.6 : "Socit de tourisme"


On veut tablir la base de donnes dune socit de tourisme spcialise dans les excursions en
autobus. La base de donnes doit permettre de grer les clients, de donner des informations sur les
excursions du catalogue de la socit, de grer le parc de vhicules et le personnel de la socit, et
daffecter les chauffeurs et htesses daccompagnement ainsi que les clients ayant rserv une place et
les autobus chaque voyage, un voyage tant la ralisation dune excursions une date prcise.
Plus prcisment, on veut pouvoir :

Identifier un client, le joindre par tlphone ou par courier, savoir les rservations quil a
effectues.

Dcrire une excursion par un nom et un libell (attractif), son point de dpart, le lieu but de
lexcursion, une rfrence un descriptif dtaill, sa dure (une demi-journe ou une journe), son
prix, ses dates, ...

Connatre pour chaque membre du personnel de la socit, en dehors de ses coordonnes


personnelles, sa qualification et sa fonction et le service auquel il est affect. Pour les chauffeurs,
on voudra de plus pouvoir retrouver des informations sur leur permis de conduire, les types
dautobus quils ont conduits, les rfrences des accidents dans lesquels ils ont t impliqus,...

Avoir les lment descriptifs principaux de chaque vhicule.

Connatre tous les lments de chaque voyage : date, excursion, vhicule affect, chauffeur,
htesse, clients ayant rserv,...

Etablir le schma entit / association de cette application et en dduire le schma relationnel.

Exercice 1.7 : "Informations mtro"


Dans le souci d'informer ses voyageurs sur son offre de transport la RATP veut construire une base de
donnes, limite dans un premier temps au mtro, qui permettra tout voyageur d'valuer prcisment
le temps ncessaire pour aller d'une station quelconque du rseau une autre (au cas o plusieurs
trajets seraient possibles le logiciel de gestion des requtes pourra prsenter au voyageur une ou
plusieurs rponses bien choisies : ce problme relve de la programmation d'application et non de la
base de donnes proprement dite et est donc hors du champ d'intrt de ce sujet). Les horaires sont
cadencs en fonction des types de tranche horaire, heure creuse, heure de moyenne charge ou heure de
pointe qui dterminent le temps d'cart entre deux trains successifs. En revanche on considrera que la
vitesse des trains et la dure des arrts en gare sont les mmes quelle que soit la tranche horaire. La
dure pour chaque changement de mtro (tenir compte des sens des changements) a t value en
moyenne pour un voyageur moyennement rapide et est considre comme indpendante de l'heure.
Elle est complte par l'indication pour chaque changement de la distance parcourir, en mtres, et du
nombre de marches monter et descendre.
1

Proposez une modlisation Entit-Association de cette application permettant des programmes


d'extraire de la base les donnes ncessaires l'information des voyageurs prcise ci-dessus.

En dduire le schma relationnel de la base de donnes.

Note : de fait il existe le systme SUROIT de la RATP, mais il en fait beaucoup plus...
Dpartement Informatique et Rseaux

-8-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 1.8 : "Enseignants - Chercheurs"


On dsire grer les emplois du temps des diffrents personnels (enseignants, enseignants-chercheurs
et chercheurs ) de lUFR, pour savoir tout moment sil est possible de les joindre, et o. Pour cela,
on considre que, en dehors des priodes o ils peuvent tre joints dans leur bureau, les personnels
peuvent tre en runion, quel que soit leur statut. Une runion est dsigne par une date prcise, une
tranche horaire et une salle de runion. On veut connatre les autres personnes participant la runion.
Chaque personne est dsigne par son nom, son prnom, le bureau o on peut la joindre.
Les enseignants peuvent, de plus, tre en cours. Un cours est identifi par la matire enseigne
laquelle est affecte toujours la mme salle. Il est dsign par une priode de dbut et de fin (ex. de
fvrier mai), un jour de la semaine, une tranche horaire et une salle de cours. Plusieurs enseignants
peuvent enseigner la mme matire dans lanne, des jours et crneaux horaire diffrents. Un
enseignant peut enseigner plusieurs fois la mme matire dans lanne, des priodes diffrentes.
Les chercheurs peuvent tre certaines priodes de lanne en mission en dehors de lUFR. Une
mission est dsigne par une date de dbut et de fin, un lieu de mission avec le numro de tlphone
correspondant. Les chercheurs appartiennent un laboratoire dont on peut joindre le secrtariat en cas
durgence.
Les enseignants-chercheurs sont la fois enseignants et chercheurs, avec un pourcentage plus ou
moins grand denseignement (par rapport la recherche) effectuer. Ils peuvent donc tre soit en
runion, soit en mission, soit en cours.
Etablir le schma Entit-Association de cette application.

Exercice 1.9 : "Socit Franaise d'Archologie"


La Socit Franaise d'Archologie est une socit savante ayant pour but la constitution d'une base
d'informations et la gestion d'une bibliothque. Cette base doit grer des objets archologiques et des
publications de ces objets.
Les objets archologiques sont caractriss par un numro d'identification, un type (ex: vase), une
description sommaire, une datation qui est une anne, le site o ils ont t dcouverts. Ils peuvent tre
exposs dans un muse. Une ville peut avoir plusieurs noms : les anciens et le nouveau (ex : Byzance,
Constantinople et Istanbul). Pour simplifier, on se limitera un seul nom ancien. Pour chaque site, on
prcisera la ville laquelle il se rattache et un numro d'ordre pour cette ville. En effet, une ville
archologique peut avoir plusieurs sites. La civilisation du site est une grande catgorie comme
"romaine" ou "crtoise". Un muse est caractris par la ville o il se trouve et par son nom.
La bibliothque comprend les publications caractrises par un titre, une date et un diteur. Elles sont
crites par un ou plusieurs auteurs. Chaque auteur est identifi par ses nom et prnom. Pour faciliter
l'accs la base de donnes, on veut pouvoir retrouver toutes les publications concernant un objet, et
inversement tous les objets cits dans une publication.

Exercice 1.10 : "Hpital Jacques Monod"


L'hpital Jacques Monod souhaite crer une base de donnes pour grer l'ensemble des
hospitalisations de l'tablissement.
L'hpital comprend des services qui sont identifis par un code et un nom. Chaque service est localis
dans un btiment et est dirig par un directeur. Un btiment comprend plusieurs salles. Chaque salle a
un numro (relatif au service), un nombre de lits et un(e) surveillant(e) responsable qui est un(e)
infirmier(e). l'hpital emploie du personnel : mdecins et infirmiers. Chaque employ a un nom, un
prnom, une adresse et un numro de tlphone. Chaque mdecin a une spcialit. Les infirmiers sont
rattachs un service (unique), travaillent de jour ou de nuit et ont un salaire. Un directeur de service
est un mdecin; les mdecins ne sont autoriss diriger qu'un seul service et ne sont pas affects un
service particulier.
Dpartement Informatique et Rseaux

-9-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Dans cet hpital, des malades viennent pour une consultation ou pour une hospitalisation. Chaque
malade a un nom, un prnom, une adresse, un numro de tlphone et une mutuelle. Il est suivi par un
ou plusieurs mdecins. S'il est hospitalis, on doit connatre son numro de lit (relatif la salle) et le
diagnostic le concernant.

Exercice 1.11 : "gestion d'un parc de vhicule"


Un organisme souhaite informatiser la gestion d'un parc de vhicules et notamment le suivi des
rparations et des entretiens priodiques.
Les vhicules sont caractriss par le numro d'immatriculation, l'anne de fabrication, la date d'achat,
le numro de srie et le kilomtrage. Les modles des vhicules sont caractriss par un code (205XL,
Twingo), une marque, un nombre de places, une puissance et le carburant utilis.
Les vhicules sont soumis des entretiens priodiques, dont la frquence varie selon les modles. Il
arrive galement qu'un vhicule soit accident.
Les travaux d'entretien et de rparation sont assurs par des garages caractriss par un nom, un nom
de grant et la marque qu'il reprsente.
Lorsqu'un vhicule doit tre rvis ou rpar, le gestionnaire du parc tablit une demande de travaux
comprenant la nature des travaux effectuer et la date de fin de travaux souhaite. S'il s'agit d'un
accident, il indiquera galement la date de l'accident et le nom d'expert charg de cet accident. Celui-ci
prcisera la nature des travaux effectuer. A la fin des travaux, une facture sur laquelle figurent la date
de fin des travaux et le montant des travaux est envoye au gestionnaire.
L'histoire d'un vhicule est conserve dans un carnet de bord. A l'achat du vhicule, ce carnet est
partiellement rempli en prcisant la date d'achat ainsi que le kilomtrage. A chaque intervention sur la
voiture, une nouvelle page de ce carnet est remplie avec la date de fin des travaux., le kilomtrage, la
nature des travaux ainsi que le motif de l'intervention (rvision ou rparation);

Dpartement Informatique et Rseaux

-10-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

2. Modle Relationnel et Algbre


Exercice 2.1 :
Soit deux relations r(A B C) et s(B C D) avec a dom(A) et b dom(B).
Les expressions suivantes sont-elles bien formes ?
1. r s

2.

B(r) - B(s)

3.

B=b (r)

4.

A=a, B=b (s)

Exercice 2.2 :
Soit les deux relations suivantes :

r
Cours
Math
Math
Latin
Physique
avec

Etudiant
Toto
Lulu
Toto
Toto

s
Note
A
B
C
A

Cours
Math
Physique
Latin

Prof
Martin
Dupond
Durand

Dom (Cours) = { Math, Physique, Latin }


Dom (Etudiant) = { Toto, Tulu }
Dom (Note) = { A,B,C }
Dom (Prof) = { Martin, Dupond, Durand }

Calculer et exprimer en franais les requtes:

Cours = Math (r)


Cours (s) - Cours (r)
Cours (r) - Cours (s)
Etudiant ( r ( Cours (s)))
Prof ( Note = A Etudiant = Toto ( r

s ))

Exercice 2.3 :
Exprimez les oprateurs de jointure, de -jointure et de division l'aide des 5 oprateurs de l'algbre
relationnelle que vous rappellerez.

Exercice 2.4 :
Soit S une suite d'oprations de mise jour sur une relation r . Dans le cadre particulier d'un langage
relationnel, le rsultat peut-il dpendre de l'ordre dans lequel ces oprations sont effectues s'il s'agit
d'une suite :

d'ajouts,
de suppressions,
d'ajouts et de suppressions,
d'ajouts et de modifications,
de modifications uniquement ?

Illustrez vos rponses par des exemples.


Dpartement Informatique et Rseaux

-11-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 2.5 :
Une base de donnes de schma R(A,B,D) et Q(A,B) contient les n-uplet suivants :
A
a1

r
B
b1

q
D
d1

A
a1

B
b1

a1
a1
a2
a3
a2
a2
a1

b1
b2
b2
b1
b2
b2
b1

d2
d1
d1
d2
d2
d3
d4

a2

b2

Quels sont les nuplets de j = D (r q) o la jointure est naturelle, c'est--dire qu'elle porte sur
tous les attributs de mme nom dans les deux relations ? Caractrisez en franais les n-uplets de j
par rapport ceux de r et de q.

Quels sont les n-uplets de u = r q ? Caractrisez en franais les n-uplets de u par rapport ceux
de r et de q.

Quels sont les n-uplets de r ( u q) ? Donnez leurs caractrisation en franais.

Exercice 2.6 :
Soit

E1, E2, E3... des expressions relationnelles

A1, A2, A3..., B1, B2, B3 ... des attributs


1

Les quivalences1 suivantes sont-elles vraies dans tous les cas ? Sinon dans quels cas sont-elles
vraies?
a) E1

E2

E2

E1

(Jointure naturelle)

b) E1

F E2

E2

F E1

(-jointure)
o F est un prdicat sur les attributs de E1 et E2

c) (E1 E2)

E3

E 1 (E 2

E3 )

d) A1,...,An ( B1, ...,Bn (E))

e) F1 ( F2 (E))

F1 F2 (E)

A1, ...,An (E)


F2 ( F1(E))

F1 et F2 prdicats sur les attributs de E

F ( A1,...,An (E))

f) A1,...,An ( F (E))

g) F (E1 - E2)

F (E1) - F (E2)

Quel peut tre l'intrt de trouver ainsi des quivalences entre expressions relationnelles ?

1 Deux expressions relationnelles sont dites quivalentes lorsqu'elles produisent le mme rsultat, indpendamment de l'ordre

des attributs.

Dpartement Informatique et Rseaux

-12-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 2.7 :
Soit la base de donnes relationnelle de schma :
R1(Parent, Enfant), R2(Personne, Age, Sexe), R3(Enfant, Ecole)
o Parent, Enfant et Personne sont des attributs de mme domaine.
Exprimer, quand c'est possible, en algbre relationnelle les requtes suivantes. En cas de besoin on
renommera des attributs et/ou les relations:
1
2
3
4
5
6
7
8
9
10

Quels sont les enfants de Pierre ?


Quels ges ont les enfants de Marie ?
Combien Paul a-t-il de filles ?
Quel est l'ge moyen des personnes rpertories dans la base ?
Qui sont les grands parents de Jacques ?
Quels parents n'ont que des garons ?
Quels couples de parents ont au moins deux enfants ?
Liste des parents et des coles de leurs enfants.
Liste des parents qui ont au moins un enfant dans chacune des coles prsentes dans la base.
Quels sont les oncles de Tristan ? On prendra le terme oncle dans son acception la plus stricte:
frre du pre ou de la mre.
11 Qui n'a pas d'enfant scolaris ?
12 Quels parents ont au moins un fils plus ag qu'une fille ?
13 Quels sont les arrire-grands-parents de Brnice ?

Exercice 2.8 :
Une association dispose d'un certain nombre de centres sportifs o ses adhrents peuvent s'inscrire en
vue de la pratique de sports. Pour la gestion de ses installations elle dispose d'une base de donnes de
schma S1 :
Pratique(Personne, Sport), qu'on abrgera en R1(P, S),
Est_Membre(Personne,Centre_Sportif) abrg en R2(P, T),
Propose(Centre_Sportif, Sport) abrg en R3(T, S).
Exprimez les requtes suivantes en algbre relationnelle :
1
2
3
4
5
6
7

Quels centres sportifs proposent au moins un sport pratiqu par Pierre ?


Quels centres sportifs proposent tous les sports pratiqus par Henri ?
Quels centres sportifs proposent tous les sports pratiqus par chacun de leurs membres?
Quels sports offerts par l'association ne sont pas proposs par le centre Les Joyeux Muscls ?
Quels centres sportifs proposent au moins deux sports pratiqus par Louis ?
Quels centres sportifs proposent les sports pratiqus par Jacques et Jean ?
Donnez les couples de personnes tels que chaque personne du couple pratique au moins un
sport que l'autre pratique et au moins un sport que l'autre ne pratique pas.

Exercice 2.9 :
L'association sportive prsente l'exercice prcdent hsite sur le choix du schma de sa base de
donnes. Vaut-il mieux choisir S1 propos dans l'exercice prcdent ou bien prfrer une base dont le
schma S2 est rduit une relation R (P, S, T). Un nuplet de R indique le nom d'une Personne qui
pratique un Sport dans un Centre Sportif.
1

Quelles diffrences voyez-vous entre les deux schmas du point de vue de la smantique des
informations qu'on peut mmoriser dans la base ?

2 Quelles informations peut-on mmoriser dans une base et qu'on ne pourrait pas mmoriser dans
l'autre? Donnez des exemples pour chacun des deux cas.
Dpartement Informatique et Rseaux

-13-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 2.10 :
Soit le schma de la base de donnes de l'"Officiel des spectacles" suivant :
SALLE (NOM, HORAIRE, TITRE)
FILM (TITRE, REALISATEUR, ACTEUR)
PRODUIT (PRODUCTEUR, TITRE)
VU (SPECTATEUR, TITRE)
AIME (AMATEUR, TITRE)
o les attributs prennent leurs valeurs dans les domaines suivants:
NOM noms de salles
HORAIRE heures
TITRE titres de films
REALISATEUR, ACTEUR, PRODUCTEUR, SPECTATEUR, AMATEUR noms de personnes
Ecrire les requtes suivantes en algbre relationnelle :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

O et quelle heure peut-on voir le film "Out of Africa" ?


Quels sont les films raliss par Marcel Carn ?
Quels sont les acteurs de "Mission" ?
O peut-on voir un film o joue Arletty ?
Quels sont les acteurs qui ont produit un film ?
Quels sont les acteurs qui produisent un film dans lequel ils jouent ?
Quels sont les acteurs qui jouent dans les films de Resnais ?
Quels acteurs jouent dans tous les films ?
Quels acteurs jouent dans tous les films de Tati ?
Qui produit tous les films de Tarkowski ?
Quels spectateurs ont vu tous les films ?
Quels sont les spectateurs qui aiment tous les films qu'ils ont vu ?
O peut-on voir Christophe Lambert aprs16h ?
Quels films ne passent dans aucune salle ?
Qui produit un film qui ne passe dans aucune salle ?
Quels sont les producteurs qui ont vu tous les films qu'ils produisent ?
Quels producteurs ont vu tous les films de Coline Serreau ?
Quels spectateurs aiment un film qu'ils n'ont pas vu ?
Qui n'aime aucun film ?
Qui ne produit aucun film de Alain Cavalier ?
Quels sont les acteurs qui produisent un film qu'ils ont ralis ?
Quels sont les producteurs qui n'ont vu que les films qu'ils produisent ?

Exercice 2.11 :
Soit la base de donnes relationnelle dont le schma contient les relations A-Lu(Personne, Livre), AEcrit(Personne, Livre), A-Publi(Personne, Livre) o les attributs Personne et Livre sont des
identifiants. Exprimez en algbre relationnelle les requtes suivantes :
1
2
3

Quelles personnes ont publi tous les livres quelles ont crits ?
Quels auteurs ont crit des livres lus par plus de deux lecteurs ?
Quelles personnes ont lus tous les livres de Jules Vernes ?

Exercice 2.12 :
Le CRIF, Club de Randonne d'Ile de France, a constitu une base de donnes relationnelle
rcapitulant ses activits et servant leur gestion. On y trouve entre autres les relations suivantes :
AFait (Randonneur, Randonne, Type) o Type dsigne le moyen de randonne utilis : marche, vlo,
VTT, moto, cano...
Dpartement Informatique et Rseaux

-14-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Descriptif (Randonne, Type, Dure, Difficult) o Dure est donne en heures et Difficult est une
cote numrique adapte chaque type de randonne. Les attributs Randonneur et Randonne sont des
identifiants.
Exprimez, quand c'est possible, en algbre relationnelle les requtes suivantes, en justifiant
soigneusement chacune de vos rponses (et ventuellement les diffrents lments qui la composent) :
1
2
3
4
5

Quelles sont les randonnes en vlo de plus de 6 heures faites par Louison ?
Qui a fait les randonnes "Vaux de Cernay" et "Vaux le Vicomte" ?
Combien Jules a t'il fait de randonnes de Difficult 3 en cano ?
Qui a fait toutes les randonnes qu'a faites Jim ?
Qui a fait au moins une randonne faite par Paul et au moins une randonne que n'a pas faite
Virginie ?

Exercice 2.13 :
La Maison des Jeunes d'une rgion gre une base de donnes de groupes de musique et de musiciens
en vue de l'organisation de la Fte de la Musique. Parmi les relations de la base on trouve
Pratique (Musicien, Instrument), FaitPartie (Musicien, Groupe), Comprend (Groupe, Instrument)
dont la smantique est claire. Les attributs Musicien et Groupe sont des identifiants. Exprimez quand
c'est possible les requtes suivantes en algbre relationnelle en justifiant soigneusement votre
proposition:
1
2
3
4
5
6

Quels musiciens pratiquent la batterie et le saxo ?


Quels musiciens font partie de plus d'un groupe ?
Quels musiciens pratiquent tous les instruments du Groupe Kan'Nida ?
Quels musiciens pratiquent au moins un des instruments pratiqus par Boubacar Traore ?
Quels musiciens jouent uniquement de la clarinette ?
Quel est l'ensemble des instruments que peuvent jouer les musiciens du groupe Go Between ?

Exercice 2.14 :
Le CRIF, Club de Randonne d'Ile de France, a constitu une base de donnes relationnelle
rcapitulant ses activits et servant sa gestion. On y trouve en autres les relations suivantes :
Afait (randonneur, Randonne, Type)
o Type dsigne le moyen de randonne utilis : marche, vlo, VTT, moto, cano.
Descriptif(Randonne,Type, Dure, Difficult
o Dure est donne en heures et Difficult est une cote numrique .adapt chaque type de
randonne.
Les attributs Randonneur et Randonne sont des identifiants.
Exprimer, quand cela est possible, en algbre relationnelle (arbres algbriques et expressions
algbriques) les requtes suivantes, en justifiant soigneusement chacune de vos rponses :
1
2
3
4
5

Quelles sont les randonnes en vlo de plus de 6 heures faites par Louison ?
Qui a fait les randonnes "Vaux de Cernay" et "Vaux le Vicomte" ?
Combien Jules a-t-il fait de randonnes de difficult 3 en cano ?
Qui a fait toutes les randonnes qu'a faites Jim ?
Qui a fait au moins une randonne faite par Paul et au moins une randonne que n'a pas faite
Virginie ?

Exercice 2.15 :
Soit le schma de base de donnes TENNIS :
Joueur (NuJoueur, Nom, Prnom, DateNaissance, Nationalit)
Rencontre (NuGagnatnt, NuPerdant, LieuTournoi, Anne, Score)
Dpartement Informatique et Rseaux

-15-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Gain (NuJoueur, LieuTournoi, Anne, Prime, NomSponsor)


Sponsor(Nom, Adresse, ChiffreAffaire)
Remarque : NuGagnant et NuPerdant sont sur le mme domaine que NuJoueur.
Hypothse : Ds qu'il particpie un tournoi, un joueur touche une prime.
Donner, sur cette base de donnes, quand c'est possible, les requtes suivantes l'aide de l'algbre
relationnelle :
1
2
3
4
5
6

Quels sont les noms et dates de naissance des joueurs ayant particip Roland Garros en 1994 ?
Quels sont les noms et nationalits des joueurs sponsoriss par Peugeot et ayant gagn Roland
Garros au moins un match ?
Quels sont les noms des joueurs ayant particip en 1996 la fois au tournoi de Roland Garros et
celui de Wimbledon ?
Quels sont les noms des diffrents vainqueurs de Roland Garros ?
Quels sont les noms des joueurs ayant particip tous les tournois en 1994 ?
Quelle est la moyenne des primes gagnes par anne ?

Exprimer en franais la signification des questions algbriques suivantes sur la base de donnes
TENNIS :

Nom,Prnom

(Nationalit = "France"

(Joueur)
((
(
( ((
(

NuGagnant = NuJoueur

(Gain

Nom,Prnom

LieuTournoi = "W"

NuGagnant

(Rencontre)) )

NomSponsor = Nom

NuJoueur = NuGagnant

(Rencontre)

Anne > 1990

))

ChiffreAffaire > 1000MF (Sponsor)

(Rencontre)))

LieuTournoi = "RG"

- ( NuGagnant (LieuTournoi = "W" (Rencontre)) ) )

(Rencontre))

) - (

NuPerdant

( ( ( NuGagnant,NuPerdant,LieuTorunoi (Rencontre)

NuGagnant = NuJoueur (Joueur)

NuPerdant = NuJoueur (Joueur)

NomGagnant, Prnom, NomPerdant, Prnom

(Rencontre) )

NuJoueur = NuPerdant

NuPerdant

(Joueur)

LieuTournoi = RG"

LieuTorunoi

Exercice 2.16 :
Le guide culinaire Guy milie donne des informations sur les menus et fournisseurs des
restaurants. Parmi les relations de sa base de donnes on trouve Vend(Boucher, Viande, Prix),
Utilise(Cuisinier, Viande, Recette), Fournit(Boucher,Cuisinier) dont la smantique est claire :
Vend(Sanzos, Porc, 35) veut dire que le boucher Sanzos vend la viande de porc 35 francs le kilo,
Utilise(Gatsosse,Boeuf,Pot-au-Feu) veut dire que le cuisinier Gatsosse utilise de la viande de
boeuf pour prparer le pot-au-feu, et Fournit(Sanzos, Gatsosse) veut dire que le boucher Sanzos
fait partie des fournisseurs en viande du cuisinier Gatsosse.
Exprimez quand c'est possible les requtes suivantes en algbre relationnelle et en SQL, en justifiant
soigneusement votre proposition:
1
2
3
4

Quels cuisiniers utilisent la fois du porc et de lagneau pour la recette du Bckehoffe?


Quel est l'ensemble des viandes utilises par les cuisiniers clients du boucher Sanzos ?
Quels bouchers fournissent au moins deux cuisiniers ?
Quels bouchers ne vendent que de la viande de cheval ?

Dpartement Informatique et Rseaux

-16-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Quelle est le nom et le prix moyen de chaque type de viande vendu par les fournisseurs du
cuisinier Gatsosse ?

Dpartement Informatique et Rseaux

-17-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

3. Calcul Relationnel
Exercice 3.1 :
Exprimer, en calcul variable n-uplet, les expressions de l'algbre relationnelle suivantes :
a. R

b. R - S

c. A1,A2 (R)

d. F (R)

Exercice 3.2 3.7 :


Reprendre les exercices 2.7, 2.8, 2.10, 2.11, 2.12 et 2.13 (partie "2. Modle Relationnel").
Exprimez les requtes en calcul variables n-uplet, variable domaine.

Exercice 3.8 :
Soit le schma de la base de donnes de la scolarit d'une UFR pour l'anne en cours:
Description(Cours, Formation)
Inscription(Etudiant, Formation)
Rsultat(Cours, Etudiant, Note)
La relation Inscription prcise quelle formation est inscrit chaque tudiant, Description donne pour
chaque formation les cours qui la composent, et Rsultat indique pour chaque tudiant la note qu'il a
obtenue un cours. Il n'y a pas de valeur nulle. Un tudiant n'ayant pas de note un cours de sa
formation est rput ne pas avoir suivi ce cours et donc son nom ne figurera pas associ au nom de ce
cours dans la relation Rsultat. On pourra abrger les notations en remplaant le nom d'une relation ou
d'un attribut par son initiale.
1

Pour chacune des requtes suivantes, indiquez, quand c'est possible, son expression en algbre
relationnelle et en calcul relationnel variable n-uplet. Si l'expression d'une de ces requtes n'est
pas possible, dites pourquoi.
a)
b)
c)
d)
e)
f)
g)

Quels tudiants de IUP2 ont 16 au moins un cours ?


Liste des tudiants suivant les cours d'anglais et les cours d'espagnol.
Liste des tudiants ayant plus de 10 tous les cours qu'ils suivent.
Liste des tudiants dont la note de japonais est plus leve que la moyenne de ce cours.
Quels tudiants ont moins de 7 au moins deux cours ?
Quels tudiants ont suivi tous les cours proposs dans leur formation ?
Liste des tudiants ayant la meilleure note, dans chaque cours.

Donnez en franais et en algbre relationnelle l'expression de la requte en calcul variables nuplet suivante:

{t.E I R(t) s R(s) (t.E =.s.E) (s.C = Math) (t.C = Anglais) (t.N < s.N)}
3

Donnez en franais et en calcul variables-nuplet l'expression de la requte en algbre


relationnelle suivante:

E ((F = Miage1)I {E ((C = Algorithmique) ( = 10)R )


E ((C = Logique) ( =13)R )})
Exercice 3.9 :
Montrer que toute expression du calcul variable n-uplet a un quivalent dans le calcul variable
domaine.

Dpartement Informatique et Rseaux

-18-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 3.10 :
Soit une base de donnes relationnelle de schma:
Rl(P, M1, M2, D, P1, G, P2) qui signifie que le Ministre M2 , membre du parti politique P2 est devenu,
la date D, titulaire du portefeuille P1 dans le G-ime gouvernement du Premier Ministre M1, le
Prsident de la Rpublique tant P.
R2(C1,A,P2,G2,T,P3), qui signifie que le candidat C1, soutenu par le parti P2, est prsent dans la
circonscription G2 au tour T de llection lgislative de lanne A et y a obtenu un pourcentage P3 des
voix. Pour simplifier on supposera quun candidat est lu un tour si P3 > 50.
1

Exprimer les requtes suivantes en algbre relationnelle et en calcul variables-nuplet en justifiant


chaque rponse par une caractrisation des diffrents ensembles de nuplets qui y apparaissent.
a) Quels ont t les premiers ministres de Mitterrand?
b) Quels dputs de 86 ont ts rlus en 88 ?
c) Dans quelles circonscriptions les ministres des gouvernements Mauroy se sont-ils prsents en
88 ?
d) Quelles circonscriptions ont chang de dput entre les lections de 86 et celles de 88 ?
e) Quels ministres ont appartenu au moins deux gouvernements ?
f) Qui a t ministre dans tous les gouvernements Chirac sous la Prsidence de Mitterand ?
g) Quels candidats nont jamais chang de circonscription ?
h) Quels ministres de Rocard nont jamais t dputs ?
i) Quels candidats ont chang de parti entre deux lections ?

Exprimez en franais les requtes suivantes:


{t.M1 R1(t) ( s R2(s) (s.T = 1) (s.A = 81) (s.P3 > 50) (t.M1= s.C1)}
{t.M2 R1(t) (s R1(s) ((s.D < 81) (( u R1(u) (t.M2 = u.M2 ) (s.M1 = u.M1)))) }

Dpartement Informatique et Rseaux

-19-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

4. S.Q.L.
Exercice 4.1 :
La base de donnes relationnelle dune banque a le schma suivant :
Succursale (NomSucc, Actif, VilleSucc)
Client (Nom_Client, Rue, Ville_Client)
Dpt (Nom_Succ, Numro_Compte, Nom_Client, Solde)
Emprunt (Nom_Succ, Numro_Emprunt, Nom_Client, Montant)
Ecrire, en SQL, les requtes suivantes :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Trouver les noms des succursales ayant des comptes client, avec et sans limination des doubles.
Noms des clients ayant un compte la succursale Rivoli.
Noms des clients ayant un compte la succursale Rivoli ou un emprunt la succursale Opra.
Noms des clients ayant un compte la succursale Rivoli et un emprunt la succursale Opra.
Trois solutions .
Noms des clients ayant un compte la succursale Rivoli mais pas d'emprunt. Trois solutions.
Noms des clients ayant un compte avec la ville o ils habitent. Mettre le rsultat dans la relation R.
Noms des clients ayant un compte Etoile avec la ville o ils habitent. Mettre le rsultat dans la
relation R.
Noms des clients ayant un compte dans la succursale o Pierre a un compte. Donnez au moins
deux solutions dont une avec des variables nuplet.
Trouvez les succursales qui ont un solde plus lev qu'une succursale d'Aurillac.
Trouvez les succursales qui ont un solde plus lev que toutes les succursales d'Aurillac.
Noms des clients ayant un compte dans toutes les succursales de Conflans-Sainte-Honorine.
Donnez la liste par ordre alphabtique des emprunteurs de la succursale d'Orsay.
Donner pour chaque succursale le solde moyen des comptes client.
Donner le solde moyen des comptes client pour les succursales ayant un solde moyen suprieur
5000.
Combien de clients habitent Paris ?
Combien de clients ayant un compte la succursale Bastille n'ont pas leur adresse dans la relation
Client ?
Insrer le nuplet (Paul, Victor Hugo, Paris) dans la relation Client.
Diminuer l'emprunt de tous les clients habitant Ajaccio de 5%.
Fermer le compte de Thomas.
Supprimer de Succursale toutes les succursales sans client.
Crer la relation VIP (Nom_Client, Numro_Compte).

Exercice 4.2 4.6 :


Reprendre les exercices 2.7, 2.8., 2.11, 2.12 et 2.13 et exprimer les requtes en SQL.

Exercice 4.7 :
Soit la base de donnes relationnelle compose des relations suivantes:
Livre(Titre, Auteur, Editeur), Lecture (Titre, Genre, Lecteur)
o l'attribut Titre dsigne le titre d'un livre et n'est pas un identifiant (le mme titre peut tre utilis
pour plusieurs ouvrages d'auteurs diffrents), les attributs Auteur, Lecteur et Editeur ont pour domaine
l'ensemble des noms de personne et sont des identifiants. l'attribut Genre a pour domaine un ensemble
de genre de livre (roman, posie, nouvelle, mmoires, documentaire...)
Dpartement Informatique et Rseaux

-20-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exprimez, quand c'est possible, en algbre relationnelle, calcul relationnel et SQL les requtes
suivantes, en justifiant soigneusement chacune de vos rponses (et ventuellement les diffrents
lments qui la composent) :
a)
Quels diteurs ont lu tous les livres qu'ils ont dits ?
b)
Quels auteurs ont t dits chez Dunod et chez Flammarion ?
c)
Quels diteurs lisent des romans de JMG le Clzio ?
d)
Quels diteurs lisent de la posie mais pas de roman ?
e)
Quels lecteurs ont lu tous les livres de Kundera ?
f) Quels auteurs sont leurs propres diteurs mais ont aussi dit des livres crits par d'autres ?

De manire maintenir l'intgrit de la base tout Titre figurant dans un nuplet de la relation
Lecture doit aussi figurer dans au moins un nuplet de la relation Livre L'intgrit peut donc tre
mise en cause par une modification de Titre dans un nuplet de Livre ou de Lecture, par une
suppression d'un nuplet de Livre ou par une insertion de nuplet dans Lecture. Ecrivez un
programme C/SQL capable de traiter les deux derniers cas (suppression et insertion) c'est--dire
qui interdit ces mises jour si elle ne respectent pas la contrainte.

Exercice 4.8 :
Soit le schma de la base de donnes CINEMA :
FILM (Num-F, Titre, anne, Dure, Budget, Ralisateur, Salaire-R)
GENERIQUE (Film, Acteur, Rle, Salaire)
PERSONNE (Num-P, Nom Prnom, Date-Nais, Sexe, Adresse, Tl.)
ACTEUR (Num-A, Agent, Spcialit, Taille, Poids)
CINEMA (Num-C, Nom, Adresse, Tlphone, Compagnie)
PROJECTION (Film, Cinma, Salle, Date-Deb, Date-Fin, Horaire, Prix)
SALLE (Cinma, Num-S, Taille-Ecran, Places)
RECOMPENSE (Num-R, Nom, Catgorie, Festival)
RECOMP-FILM (Film, Rcompense, Anne)
RECOMP-ACTEUR (Acteur, Rcompense, Anne)
Dans le schma, NumF, Num-P, Num-A, Num-C et Num-R sont des identifiants uniques (cls
primaires) pour respectivement : FILM, PERSONNE, ACTEUR, CINEMA, SALLE et RECOMPENSE.
Tout nom de relation utilis comme attribut est une cl trangre qui renvoie l'identifiant (cl
primaire) de la relation correspondante. Par exemple, dans GENERIQUE, Film correspond Num-F
de FILM et est dfini sur le mme domaine. Ralisateur dans FILM et Num-A dans ACTEUR sont
dfinis sur le mmes domaine que les Num-P.
Remarque : Lorsqu'un acteur reoit une rcompense, le film en reoit une indirectement. Le mme
numro de rcompense est insr la fois dans la relation RECOMP-ACTEUR et dans la relation
RECOMP-FILM. On a ainsi u lien entre la rcompense de l'acteur et le film pour lequel il l'a obtenue.
Exprimer les requtes suivantes en SQL :
1. Trouver le titre des films raliss par Roman Polanski.
2. Donner le nom des ralisateurs qui ont jou dans un de leurs films.
3. Donner le nom et le prnom des acteurs qui ont jou gavroche dans une des diffrentes versions de
Misrables avec la date correspondante.
4. Trouver le nom et le prnom des acteurs comiques qui ont jou dans un film de Grard Oury entre
1975 et 1985.
5. Donner le total des salaires des acteurs du film le Grand Bleu.
6. Donner la moyenne des salaires des acteurs par film, ainsi que le numro du film.
7. Lister les cinmas dont la taille moyenne d'cran est suprieure 40 mtres carrs.
8. Donner le titre des films qui ont reu au moins trois rcompenses;
9. Trouver les films qui ne passent dans aucun cinma de la compagnie FOX.
10. Lister les cinmas qui ont exclusivement pass des films prims.
Dpartement Informatique et Rseaux

-21-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

11. Trouver le nom, le prnom, et le numro des acteurs qui ont jou dans tous les films de Lelouch,
s'il y en a.
12. Pour chaque film de Bergman, trouver le nom et le prnom de l'acteur qui a eu le plus gros salaire.

Exercice 4.9 :
Soit le schma de la base de donnes ARBRE GENEALOGIQUE :
PERSONNE ( NumPersonne, Nom, Prnom, NuPre, NuMre, Sexe)
UNION (NuMari,NuEpouse)
Exprimer les requtes suivantes en SQL :
1.
2.
3.
4.
5.
6.

Quels sont les enfants de Jean Graton ?


Quels est le prnom de la femme de Michel Vaillant ?
Combien le docteur March a-t-il de filles ,
Quels sont les noms et prnoms des grands-parents maternels de Raymonde Bidochon ?
Quels sont les oncles et tantes cot paternel de Gaston Lagaffe ?
Quels sont les anctres du capitaine Haddock ?

Exercice 4.10 :
Soit une base de donnes touristique telle que :
STATION (NumSta, NomSta, Altitude, Rgion)
HOTEL ( NumHot, NomHot, NumStat, Catgorie)
CHAMBRE ( NumHot, NumCh, NbLits)
RESERVATION (NumCli,NumHot,NumCh,DateDeb,DateFin,NbPers)
CLIENT (NumCli, NomCli,AdrCli,TelCli)
1. Donner les noms des clients et le nombre de personnes correspondante pour les rservations de
l'htel Bellevue de Courchevel.
2. Pour chaque station de Haute-Savoie, donner le nombre de lits en catgorie trois toiles.
3. Pour chaque station de Haute-Savoie, donner le nombre de chambres rserves pour le 11/02/95.
4. Quels sont les noms des htels de catgorie deux toiles de Mribel qui sont complets la semaine
du 12/02/95 au 18/02/95 ?
5. Quelles sont les rgions dont toutes les stations sont plus de 1500m d'altitude ?
6. Quels sont les clients qui sont alls dans toutes les stations du Jura ?

Exercice 4.11 :
Reprendre l'exercice 2.16 et exprimer les requtes en SQL.

Dpartement Informatique et Rseaux

-22-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

5. Dpendances Fonctionnelles
Exercice 5.1 : Soit le schma R (A,B,C,D,E) et la relation r. Quelles dpendances fonctionnelles satisfait r ?
r
A

a1

b1

c1

d1

e1

a1

b2

c2

d2

e1

a2

b1

c3

d3

e1

a2

b1

c4

d3

e1

a3

b2

c5

d1

e1

Attention: Constater des Dpendances Fonctionnelles satisfaites sur des nuplets de r ne prouve pas que
ces dpendances existent sur R.

Exercice 5.2 : Soit un univers U et X, Y, Z et W des sous-ensembles d'attributs de U. A t'on les implications logiques
suivantes ? Si oui, le montrer, si non donner un contre-exemple.
1.
2.
3.
4.
5.
6.
7.
8.
9.

{X Y; Z W }
{XY Z; Z X }
{X Y; Y Z }
{ X Y ; W Z } et W Y
{W Y, X Z}
{X Y} et Y Z
{X Y, X W, WY Z}
{XY Z, Y W}
{X Y, XY Z}

XZ YW
ZY
X YZ
XZ
WX Y
XZ
XZ
XW Z
XZ

Exercice 5.3 : Quelles dpendances peut-on trouver sur la base de donnes "Speedo Finn" ?
Exercice 5.4 :
Soit F = {AB C, B D, CD E, CE GH, G A).
?

A-t'on AB E ? BG C ? AB G

Exercice 5.5 : Donner les cls, en signalant les surcls, des schmas de relation suivants:
RI (cours, tudiant, note)
R2 (tudiant, examen, horaire)
R3 (n vol, date dpart, porte d'accs, heure dpart, destination)
R4 (cours, tudiant, note, heure, salle, professeur)
R5 (employ, directeur, salaire, service)

Exercice 5.6 :
L'union de deux cls est-elle une cl? L'intersection? Le montrer ou donner un contre-exemple.

Exercice 5.7 : Soit r et s des relations de schma R ayant K comme cl. Parmi les relations suivantes,
lesquelles ont K comme cl ? Montrez-le ou trouvez des contre-exemples.
a) r s
Dpartement Informatique et Rseaux

b) r s

c) r \ s d) K(r)

-23-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 5.8 :
Calculer F+ pour R (A,B,C) et F = {A B; B C). Cl ?

Exercice 5.9 :
1

Les deux ensembles de dpendances fonctionnelles F et G sont-ils quivalents ?


F = {A B ; CE H; C E ; A CH}

G = {C EH, A BC}

F est-elle minimale ?

Peut-on dduire de F les dpendances fonctionnelles CE B et AB C ? On utilisera pour


chaque cas deux dmonstrations diffrentes. En cas de rponse ngative on pourra utiliser un
contre-exemple.

Exercice 5.10 :
Soit R (A,B,C,D) et F = {A B; B C),
1

Quelle est la cl de R ?

Quelle est la fermeture A+ de A?

Exercice 5.11 :
Soit

U = (A,B,C,D,E,G)
et F= {ABC, C A, BC D , ACD B , D EG , BE C , CG BD , CE AG }

Etablir [C]+, [BD]+

En dduire des dpendances non triviales de F+ qui n'appartiennent pas F.

Mettre les dpendances F sous forme canonique (i.e. un seul attribut en partie droite).
Que peut-on dire des dpendances:
CE A
CG B
ACD B ?

En dduire deux couvertures Fl et F2 de F. Comparez leurs nombres de dpendances.

Proposez un algorithme permettant d'tablir que Fl (resp. F2) est une couverture minimale de F.

Proposez un algorithme permettant d'tablir que deux familles de dpendances sont quivalentes.

Dans chacun des cas e) et f), on prouvera l'algorithme et on le programmera.

Exercice 5.12 :
Soit la famille de dpendances fonctionnelles F suivante : A -> B, E -> G, ABD -> CG, CD -> EG.
Aprs avoir rappel la dfinition d'une famille de dpendances quivalente F et qui soit minimale
vous en proposerez une, soit G. Vous dtaillerez soigneusement les diffrentes tapes de votre
raisonnement, ainsi que le ou les algorithmes que vous utilisez. Vous montrerez l'quivalence et la
minimalit.

Exercice 5.13 :
Soit la relation R(A,B,C,D,E) et la famille de dpendances fonctionnelles F = {A->B, BC-> DE, E> G, AB -> C, E->G, A->G }. F est elle minimale ? Si non tablissez une famille F' quivalente F
et minimale. Vous dmontrerez comment vous passez de F F' en conservant chaque tape du calcul
l'quivalence. Puis vous montrerez que F' est minimale.

Dpartement Informatique et Rseaux

-24-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

6. Conception de Schma et Formes Normales


Exercice 6.1 :
Montrer l'aide d'exemples qu'une dcomposition peut tre sans perte d'information (SPI) mais perdre
des dpendances (non SPD), et qu'elle peut prserver les dpendances et perdre de l'information.

Exercice 6.2 :
Soit F = { AB C ; A B }
1

Trouver une couverture minimale de F

Montrer l'aide d'un exemple que : G = {A B ; B C} n'est pas une couverture minimale de F.

Exercice 6.3 :
1

En quelle forme normale sont les relations suivantes :

a) R (Cours, Etudiant, Age, Note)


{ Cours, Etudiant Note ; Etudiant Age }
b) R (Etudiant, Examen, Heure)
{ Heure, Etudiant Examen ; Examen Heure }
c) R (Nom-Rsident, Adresse, nAppartement, nTel)
{ Adresse, nAppartement Nom-Rsident;
Nom-Rsident, Adresse nTel }
2

Pour chaque relation montrer les redondances.

Si ces relations ne sont pas en 3NF, les dcomposer en un ensemble de relations 3NF.

Proprits de ces dcompositions ?

Exercice 6.4 :
Mme question, mais au lieu de la forme 3NF, on considrera la forme BCNF pour
1

R(Heure, Cours, Professeur, Note, Salle, Etudiant)


Cours Professeur
Cours, Etudiant Note
Heure, Salle Cours
Etudiant, Heure Cours , Salle.

R(Fournisseur, Adresse, Raison Sociale, n Produit,


Libell-Produit, Quantit, Prix, n Commande, Dlai, Date )
n Commande Fournisseur, Dlai, Date
Fournisseur Raison Sociale, Adresse
n Commande, n Produit Quantit
n Produit, Fournisseur Prix
n Produit Libell-Produit

Voiture (n Voiture, Marque, Modle, Puissance, Couleur )


Voiture Couleur, Modle
Modle Marque, Puissance

Dpartement Informatique et Rseaux

-25-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 6.5 :
Dcomposition BCNF et SPI, puis dcomposition 3NF, SPI et SPD de :
Banque (Agence, Actif, Ville-Agence, Emprunt, Client, Montant)
Agence Actif
Agence Ville-Agence
n Emprunt Montant
n Emprunt Agence

Exercice 6.6 :
Soit :
R (Professeur, Certificat, Dpartement, ResponsableDpartement)
et les dpendances fonctionnelles :
Dpartement ResponsableDpartement
Professeur Dpartement
1

Trouver une dcomposition de ce schma en 3me forme normale, qui prserve les dpendances et
soit sans perte d'information.

Cette dcomposition est-elle BCNF ?

Exercice 6.7 :
Soit R (A,B,C,D,E) un schma de relation et les dpendances fonctionnelles :
DE A et B C
1

En quelle forme normale est R ?

Proposez une dcomposition de R en 3me forme normale. Prserve-t-elle l'information ?

Exercice 6.8 :
On considre la base de donnes d'une socit d'investissement succursales multiples dont les
attributs sont : Courtier, Agence, Ville de l'agence, Investisseur, Titre, Quantit du titre dtenue par
l'investisseur, Dividende du titre. Par la suite on dsignera les attributs par leur initiale et on notera par
R la relation R(C,A,V,I,T,Q,D).
Les dpendances fonctionnelles sont: { T D; I C; IT Q ; C A }.
1

On choisit de dcomposer R en R1(I,T,Q,D) et R2(C,I,A,V). Quelles redondances et quelles


anomalies comporte cette dcomposition ? En quelle forme normale est chacune de ces relations ?

On dcompose maintenant R en S1(T,D), S2(C,I), S3(I,T,Q), S4(C,A,V). Quelles sont les proprits
de cette dcomposition ? (prservation de l'information, des dpendances, normalit)

Trouvez une dcomposition de R en 3me forme normale sans perte d'information et prservant
les dpendances. Cette dcomposition est-elle en forme normale de Boyce-Codd ?

On considre maintenant la dcomposition en R en W1(I,T,Q), W2(C,I), W3(T,D) et W4(I,T,A,V).


Trouver les couvertures minimales des dpendances projetes sur chacun des schmas de relation
de la dcomposition. En dduire une couverture minimale de l'union des dpendances projetes.
Cette dcomposition prserve-t-elle des dpendances ?

Dpartement Informatique et Rseaux

-26-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 6.9 :
On considre la base de donnes d'une compagnie de fret arien. Elle comporte les attributs I
(identificateur de l'avion), T (type de l'avion), V (identificateur du vol), F (fret transport par un avion
lors d'un vol), A (aroport), J (jour) et H (heure de dpart). On suppose qu'un vol est une suite
d'escales dans des aroports au cours desquelles l'avion prend en charge une seule cargaison qu'il livre
dans des aroports successifs. En dpit des dcalages horaires on supposera que la vitesse des avions
et les temps de dchargement sont tels qu'au cours d'une journe un avion dcolle au plus une fois par
heure. Par suite la base de donnes comporte les dpendances fonctionnelles suivantes:
F={I T; V I F; I J H A V}
1

En quelle forme normale est la relation R(A,F,I,J,H,T,V) ?

Proposez une dcomposition de R en forme BCNF sans perte d'information ?

Proposez une dcomposition sans perte d'information et sans perte de dpendance en 3me forme
normale ?

Expliquez ces rsultats.

Exercice 6.10 :
Soit la relation R(I,J,K,L) et la famille de dpendances fonctionnelles:
F={JK L; J I; IK L} sur R.
1

Trouvez une couverture minimale de F. On tablira le rsultat l'aide des fermetures d'attributs.
On le montrera ensuite nouveau par les axiomes d'Amstrong.

En quelle forme normale est R et de quel type est chacune des dpendances ?

Proposez une dcomposition de R en 3me forme normale prservant les dpendances


fonctionnelles, la dcomposition comportant seulement deux relations.

La dcomposition propose en 3 est-elle sans perte d'information ? Si non, pouvez-vous modifier


le schma pour avoir une dcomposition prservant les dpendances fonctionnelles et sans perte
d'information? En quelle forme normale est chacune des relations de cette seconde
dcomposition?

Exercice 6.11 :
Soit le schma R(A,B,G,D,E) avec la famille F de dpendances fonctionnelles:
{ DE A; B D; AG E; AGE D; BD A; ABD G }
1

La dcomposition du schma R en schmas AGDE, DE, BD, AGE est-elle sans perte
d'information?

La dpendance BD E fait-elle partie de F+ ?

Trouver la fermeture de B et celle de AG.

Proposez une famille F1 quivalente F et minimale.

Exercice 6.12 :
Soit un schma de relation R et deux ensembles de dpendances fonctionnelles F et G sur R. On
dfinit Sat(F) comme l'ensemble des extensions r de R qui satisfont F. Comparez les ensembles
suivants:
1

Sat(F G)

et Sat(F) Sat(G)

Sat(F G)

et Sat(F) Sat(G)

Dpartement Informatique et Rseaux

-27-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 6.13 :
Quel intrt voyez-vous la dfinition des formes normales de relation ?
Pourquoi la forme normale BCNF est-elle plus recherche que la troisime forme normale ? Illustrez
votre rponse par des exemples.

Exercice 6.14 :
Comment est caractrise une dcomposition sans perte dinformation (resp. de dpendance) ?
Illustrez par des exemples bien choisis lintrt de la dcomposition sans perte dinformation (resp. de
dpendance) et les inconvnients de la dcomposition avec perte dinformation (resp. de dpendance).

Exercice 6.15 :
Soit la relation R(A,B,C,D,E,G,H) et les dpendances fonctionnelles : AD -> G, B -> D, CDE -> A
1
2
3
4
5
6

Quelles sont les cls minimales de R ? Expliquez le raisonnement que vous faites.
R a t'elle des dpendances partielles ? transitives ? si oui dites lesquelles aprs avoir rappel les
dfinitions correspondantes.
En quelle forme normale est R ?
La dcomposition de R en R1(A,C,D,E) et R2(A,B,G,H) est elle "sans perte d'information". Vous
proposerez deux dmonstrations, dont une base sur un contre-exemple en cas de rponse
ngative.
Proposez une dcomposition BCNF et sans perte d'information de R. Est elle "sans perte de
dpendance"? Vous dtaillerez les diffrentes tapes de l'algorithme que vous utilisez pour faire
cette dcomposition.
Proposez une dcomposition 3NF, SPI et SPD de R, aprs avoir prsent l'algorithme de
dcomposition correspondant. Conclusion ?

Exercice 6.16 :
Soit la relation R(A,B,C,D,E) et la famille de dpendances fonctionnelles F = {AB -> C,
E-> AB }. On dcompose R en R1(A,B,D) et R2(C,E).

C-> DE,

Quelles sont les dpendances projetes sur R1 et sur R2 (dans chacun des 2 cas vous tablirez une
famille minimale de dpendances projetes) ? Vous distinguerez soigneusement les dpendances
issues de F et celles issues de F+ et non de F. Pour ces dernires vous montrerez de deux
manires diffrentes (axiomes d'Amstrong et fermetures de famille d'attributs) comment vous les
avez tablies.

La dcomposition de R en R1 et R2 est elle sans perte de dpendance ? Dmontrez.

Exercice 6.17 :
Soit la relation R(A,B,C,D,E,G,H) et la famille de dpendances fonctionnelles F = {AB->C, C->DE,
D-> AG, G->E}.
1
2
3
4
5
6
7

Rappelez comment on procde pour tablir les cls minimales d'une relation.
Etablissez les cls de R.
Rappelez les dfinitions des dpendances partielles et transitives et illustrez vos dfinitions par des
dpendances de F ou de F+ dont vous prciserez comment vous les avez tablies.
En quelle forme normale est R ? pourquoi ?
La dcomposition de R en R1(A,B,C) et R2(C,E,G,H) est elle sans perte d'information ? Selon
votre rponse proposez deux dmonstrations ou une dmonstration et un contre-exemple.
Rappelez la dfinition de la forme BCNF et l'algorithme de dcomposition sans perte
d'information d'un schma de relation en relations BCNF. Appliquez cet algorithme R.
Conclusion.
Rappelez la dfinition de la forme 3NF et l'algorithme de dcomposition sans perte d'information
et sans perte de dpendance d'un schma de relation en relations 3NF. Appliquez cet algorithme
R. En quelle forme normale sont les relations de la dcomposition ? Conclusion.

Dpartement Informatique et Rseaux

-28-

Ecole Nationale Suprieure des Tlcommunications

Bases de donnes - TA - 1999-2005

Exercice 6.18 :
Soit S le schma de base de donnes relationnelle suivant, sur lequel on a dfini un ensemble F de
dpendances fonctionnelles.
S = { R(A,B,C,D, E) }

F = { AB C , EC B , B E}

F est-elle minimale ? Expliquez votre rponse.


1

Quelles sont les cls minimales de R ? Montrez comment vous les obtenez

Donnez 1 exemple de redondance susceptible dapparatre dans une instance de R ?

S est-il en forme normale de Boyce-Codd ? S est-il en 3me forme normale ?

Quelles sont les dpendances projetes sur R1 et sur dans la dcomposition de S en un nouveau
schma S= { R1(C,D,E) , R2(A,B,C,E) } ? La dcomposition de S en S est-elle sans perte de
dpendances ?

La dcomposition de S en S est-elle sans perte dinformation ? Si oui prouvez le, si non montrez
un contre-exemple.

Exercice 6.19 :
Soit S le schma de base de donnes relationnelle suivant, sur lequel on a dfini un ensemble F de
dpendances fonctionnelles.
S = { R(A,B,C,D, E) }

F = { DE C , C B , B E}

F est-elle minimale ? Expliquez votre rponse.

Quelles sont les cls minimales de R ? Montrez comment vous les obtenez.

Quelles redondances sont susceptibles dapparatre dans une instance de R ?

En quelle forme normale est S ?

La dcomposition de S en S= { R1(C,D,E) , R2(A,B,D,E) } est-elle sans perte dinformation ? Si


oui prouvez le, si non montrez un contre-exemple.

Quelles sont les dpendances projetes sur R1 et sur R2 ? La dcomposition de S en S est-elle


sans perte de dpendances ?

Proposez une dcomposition de S, sans perte dinformation, sans perte de dpendances et en 3


forme normale. Que pensez-vous du schma ainsi obtenu ?

Dpartement Informatique et Rseaux

-29-