Vous êtes sur la page 1sur 5

Université de Yaoundé I Faculté des Sciences

The University of Yaounde I Faculty of Sciences

Département d’Informatique

INF221 (Bases de Données) : Fiche de TD N˚1


5 octobre 2023
Etienne Kouokam

E XERCICE 1 [Modèles conceptuels - Modèle relationnel]

1.1 Vous devez concevoir une base de données pour les stages en entreprises dans une formation universitaire.
La base de données concerne seulement les stages d’une année universitaire mais elle conserve les informa-
tions de plusieurs années universitaires pour les entreprises et les enseignants.
Les entreprises proposent des stages en décrivant ces stages par un sujet, une durée, une éventuelle rému-
nération.
Une entreprise peut proposer plusieurs sujets de stages différents mais n’accueillera qu’un seul étudiant par
convention de stage.
Les étudiants contactent les entreprises. Evidemment chaque étudiant peut contacter plusieurs entreprises
pour des propositions différentes ; il n’est pas interdit qu’un étudiant contacte plusieurs fois une même
entreprise, à des dates différentes, pour une proposition de stage donnée. Les entreprises prennent rendez-
vous avec les étudiants.
Lors du rendez-vous, la proposition de stage est discutée ; seule la durée ne peut être modifiée. Si l’entre-
prise est intéressée par le profil d’un étudiant, le sujet définitif est établi. La proposition de stage devient
alors un stage effectif, avec une convention de stage, qui donnera lieu à la rédaction d’un mémoire.
Une proposition de stage ne peut pas donner lieu à plusieurs conventions. Si l’entreprise estime que le sujet
doit être réalisé par plusieurs étudiants, elle publie plusieurs propositions de stage (elle est incitée à donner
des sujets différents) ; si, pour un sujet, l’entreprise était éventuellement intéressée par plusieurs étudiants,
elle publierait une nouvelle proposition de stage (à la limite en conservant le même sujet).
Les étudiants effectuent un seul stage dans l’année universitaire.
Le stage effectif doit être encadré par un (et un seul) enseignant.
L’enseignant effectue parfois une visite à l’entreprise durant le stage. Pour maintenir un contact entre l’en-
treprise et l’université, la base de données ne mémorise que le dernier enseignant qui a visité l’entreprise et
la date de cette dernière visite.
1.1.1 En utilisant d’abord le formalisme Entité-Association puis le formalisme Entité-Relation, proposez un
schéma conceptuel des données issu la situation ci-dessus présentée. Vous justifierez les choix qui vous
semblent mériter quelques explications.
1.1.2 Donnez le modèle logique des données correspondant au schéma conceptuel précédent . . .
1.2 On veut mettre sur pied une BD de gestion des spectacles cinématographiques ayant pour schéma relationnel :
– CINÉMAS (nomCinéma, numéro, rue, ville)
– SALLES (noSalle, nomCinéma, capacité, climatisée)
– HORAIRES (idHoraire, heureDébut, heureFin)
– SÉANCES (idFilm, nomCinéma, noSalle, idHoraire, tarif)
– METTEURS_ES (idMES, nomMES,prenomMES)
– FILMS (idFilm, titre, annéeproduction, genre, résumé, idMES)
– ACTEURS (idActeur, nomActeur, prénomActeur, annéeNaissance)
– RÔLES (idActeur, idFilm, nomRôle)
1.2.1 Pour chaque relation de la base de données, identifier par le symbole # ses clés étrangères.

1
1.2.2 Dessiner le schéma relationnel de la base de données.
1.2.3 Déduire du schéma obtenu au point précédent, un modèle E/A de la base de données, en respectant
les normes en matière d’écriture des noms des entités et des associations.
1.2.4 Établir le dictionnaire des données de la base de données.

E XERCICE 2 [Conception d’une base de données pour une agence de voyages]

L’énoncé n’était pas clair ! ou l’énoncé était trop compliqué, trop long !. . .
Les enseignants entendent régulièrement ces commentaires, dits sur un ton plus ou moins agressifs.

2.1 Eh bien, faites vous-même un énoncé. . .


Imaginez totalement l’informatisation d’un système d’inscriptions à des activités dans le cadre d’un centre de
vacances, genre Club Tourisme ou autres. Il y aura des destinations, des activités, des clients. . .
Définissez les règles de gestion de telle façon qu’il y ait entre six et dix entités, qu’il y ait différents types de cardi-
nalités. . . Ce serait bien aussi s’il y avait une extension de MCD (une inclusion, une exclusion,. . . ) ou une CIF. . .
Votre énoncé ne devra pas être simpliste ; il ne devra ni être trivial, ni être trop complexe ! S’il vous semble mal
approprié, changez de sujet ! Et pour conclure, votre énoncé ne devra laisser aucune ambiguïté !

2.2 Lorsque votre énoncé est terminé, dessinez le schéma conceptuel, solution de votre énoncé et en déduire
le schéma relationnel.

E XERCICE 3 [Formes normales : 1NF, 2NF et 3NF]

Considérez la relation suivante

VenteVoiture(NumVoiture, DateVente, NumVendeur, Commission, Réduction)

On suppose que chaque voiture (type de voiture) peut être vendue par plusieurs vendeurs, et que par conséquent
(NumVoiture, NumVendeur) soit la clé primaire. Les autres dépendances sont :
DateVente → Réduction, NumVendeur → Commission.

3.1 Compte tenu de la clé primaire donnée, la relation est-elle en 1NF, en 2NF ou en 3NF ? Expliquez.
3.2 Comment procéder pour la normaliser complétement (c’est-à-dire la passer en BCNF) ?

E XERCICE 4 [Forme normale de Boyce Codd]

Pour chacune des relations suivantes :

4.1 identifier les redondances éventuelles ainsi que les anomalies


4.2 déterminer la ou les clés
4.3 déterminer la forme normale
4.4 proposer une décomposition en 3NF puis en BCNF si possible sans perte d’information ni perte de dépen-
dances fonctionnelles. Sinon, justifier.

1. Piéces : Description des piéces employées dans un atelier de montage


Piéce(numPiéce, prix, TVA, libellé, catégorie)
2. Primes : Liste des primes attribuées au personnel technique en fonction du type de machine sur lequel il
travaille.
Prime(numTypeMachine, nomMachine, numTechnicien, montantPrime, nomTechnicien)
3. Auteurs : Liste des auteurs d’une publication avec leur position dans la liste des auteurs.
Auteurs(publication, auteur, position).
4. Commandes : Ensemble de commandes de produits par des clients.
Commande(numCommande, numClient, nomClient, date, numProduit, nomProduit)

2
5. Employés : Liste d’employés travaillant sur des projets d’un laboratoire.
Employé(numEmployé, numLaboratoire, numProjet, nomEmployé, nomProjet, adresse)
6. Cinéma : Liste de films projetés dans des salles de cinéma.
Cinéma (film, ville, salle, distributeur, délégué)

E XERCICE 5 [Encore les formes normales]

Soit R1 (A, B, C, D, E, F) une relation avec l’ensemble de dépendances suivant :

{AB → C, AB → D, AB → E, AB → F, B → C, D → E, D → F }

5.1 Donner le graphe(ensemble) minimum de dépendances. Quelles est la clé de R1 ?


5.2 Quelle est la forme normale de R1 ?

On décompose la relation R1 en R11 et R12 : R11 (A, B, D, E, F) et R12 (B,C).


5.3 Quelles sont les formes normales des relations R11 et R12 ?
5.4 Proposer une décomposition sans perte d’information de R11 .

E XERCICE 6 [Dépendances fonctionnelles]

Soit le schéma de la relation R(A, B, C, D, E, G) et un ensemble donné de dépendances fonctionnelles pour cette
relation :

– A → B, C – A, D, E → B, G – B, G → C
– A, C → E – C, G → D – C→B

6.1 Donner le graphe minimal des dépendances fonctionnelles de R


6.2 Donner une décomposition de R en 3éme forme normale sans perte d’informations et sans perte de dépen-
dances.
6.3 Précisez l’identifiant de chaque relation obtenue.

E XERCICE 7 [La base de données Zoo]

Le directeur d’un zoo a informatisé la gestion de son établissement. Dans ce zoo, on trouve des animaux ré-
pertoriés par type (lion, léopard, girafe, escargot,. . . ). Chaque animal posséde un nom (Charly, Arthur, Enzo,. . . )
qui l’identifie de faéon unique, une date de naissance et un pays d’origine. On retient également les maladies que
chaque animal a contractées depuis son arrivée au zoo. Les animaux sont logés dans des cages.
Chaque cage peut recevoir un ou plusieurs animaux. Certaines cages peuvent être inoccupées. Une cage corres-
pond à une certaine fonctionnalités, qui n’est pas forcément liée à un type d’animal donné (par exemple une cage
peut convenir à la fois aux girafes, aux éléphants et aux fauves, une autre aux grands oiseaux,. . . ). Une cage est
identifiée par un numéro, elle est située dans une allée, identifiée aussi par un numéro. Des personnes sont em-
ployées par le zoo pour entretenir les cages et soigner les animaux. Chaque employé est identifiée par son nom, et
on connaét la ville où il réside. Il existe deux types de postes pour les employés : gardien ou responsable. Chaque
employé est affecté à un unique poste : soit gardien, soit responsable. Un gardien s’occupe d’une ou plusieurs
cages, et un responsable a la charge de toutes les cages de une ou de plusieurs allées. Une allée est sous la respon-
sabilité d’un seul employé et toute cage occupée par au moins un animal est gardée par au moins un gardien ; les
cages inoccupées ne sont pas gardées.
Ci-dessous sont fournies les tables de la base de données du zoo.

7.1 Schéma relationnel

7.1.1 Donnez la clé primaire de chacune des tables (relations) de la base Zoo.
7.1.2 Donnez le schéma relationnel de la base Zoo.
7.1.3 Donnez la spécification de chacune des relations.

3
7.2 Compréhension des relations

7.2.1 Indiquez les n-uplets que l’on doit insérer dans la ou les relation(s) concernée(s), pour représenter les infor-
mations contenues dans le texte ci-dessous :
– Chloé, qui est au zoo depuis longtemps, vient de contracter une rage de dents en méme temps que la
grippe.
– Brigitte est une libellule femelle qui est arrivée au zoo il y a quelques jours. Les libellules sont des animaux
de type "insecte archiptére". Brigitte a été placée dans la cage numéro 3. Depuis son arrivée au zoo, elle
n’a contracté aucune maladie.
– Mme Bruandet, résidant à Papeete, vient d’être employée par le zoo. Elle a été affectée au gardiennage
des cages 4, 11, et 12.
– On vient de construire une cage piscine, qui conviendra par exemple aux tortues. Elle a le numéro 40 et
est située au bout de l’allée 10.
7.2.2 On souhaite maintenant pouvoir stocker pour chaque animal et pour chacune des maladies qu’il contracte,
la date à laquelle il a contracté cette maladie. Quel est l’impact de cette modification sur le modéle relationnel
précédent ?
7.2.3 Quelles sont les caractéristiques de l’énoncé qui ne sont pas directement traduites par les relations ?
7.3 Requêtes
Donnez l’expression relationnelle, l’expression SQL, ainsi que le résultat des requétes données ci-dessous :
7.3.1 Le nom des animaux du zoo.
7.3.2 Les fonctionnalités disponibles dans le zoo.
7.3.3 Les noms des léopards.
7.3.4 Les maladies contractées au moins une fois par des animaux du zoo.
7.3.5 Les noms et numéros de cage des animaux méles qui sont originaires du Kenya et dont la date de naissance
est antérieure à 1992.
7.3.6 Une requéte produisant l’affichage suivant :

Peyrin vit à Nouméa


Berrut vit à Sarténe
Sicard vit à Calvi
Voiron vit à Pointe - Pitre
Scholl vit à Ushuaia
Adiba vit à Papeete

7.3.7 Le nom et l’âge des animaux en 2012.


7.3.8 Le nom des gardiens qui habitent Ushuaéa.

4
7.3.9 La fonctionnalité et le nom du gardien des cages gardées par un employé habitant Calvi.
7.3.10 Le nom des animaux ainsi que des employés qui en sont soit les gardiens soit les responsables.
7.3.11 Le nom des gardiens gardant tous les animaux.
7.3.12 Les noms et types des animaux qui n’ont jamais été malades.
7.3.13 Les noms des animaux originaires du Kenya ayant déjà contractés une grippe.
7.3.14 Les numéros et fonctionnalités des cages qui sont inoccupées.
7.3.15 Donner pour chaque animal méle l’ensemble des maladies qu’il a contractées (ensemble des couples nom
d’animal, nom de maladie).
7.3.16 Les numéros et fonctionnalités des cages qui sont partagées par des animaux de types différents. En
d’autres termes, ce sont les cages qui contiennent au moins deux animaux de types différents.
7.3.17 Les noms des responsables et les noms des gardiens de Charly.
7.3.18 Le nom et le pays d’origine de l’animal doyen du zoo (il peut y en avoir plusieurs).
7.3.19 Le nom, le type et l’année de naissance des animaux qui ont contracté toutes les maladies (connues) du
zoo.
7.3.20 Le nom, le type et le pays d’origine des animaux qui partagent la cage de Charly.
7.3.21 Le nom et l’adresse des employés qui sont gardiens d’animaux de tous types, on fait référence aux types
des animaux du zoo.

Vous aimerez peut-être aussi