TD 7 : Dépendances fonctionnelles
Exercice 1
Soient:
L'ensemble d'attributs {A, B, C, D, E}
Les dépendances fonctionnelles :
A –> B, C
D –> E
C, D –> A
1. Montrer, à l'aide des axiomes d'Armstrong, que {A, D} est une clé de ce schéma.
2. Montrer que {C, D} est également une clé.
Exercice 2
Exprimez les descriptions suivantes sous forme d'ensembles d'attributs et de dépendances fonctionnelles:
Chaque véhicule possède un conducteur principal
Au sein d'une entreprise, chaque département est dirigé par un employé (mais tous les employés ne dirigent pas un département!)
Dans une bibliothèque, un livre peut être emprunté par plusieurs abonnés (mais pas au même moment!)
Exercice 3
Soient les attributs {num_ligne, arrêt, voie, ville, heure_départ, heure_passage} pour la modélisation d’un réseau de bus.
1. Exprimez les dépendances fonctionnelles suivantes :
Certaines voies possèdent plusieurs arrêts (mais la réciproque n’est pas vraie).
Pour une ligne données, l'heure de départ définit l'heure de passage à un arrêt.
Un bus ne peut se trouver à deux arrêts différents au même horaire de passage.
2. Définissez une clé pour cet ensemble d'attributs
Exercice 4
Soient les attributs {id_enseignant, num_salle, date, heure, id_élève, code_UE}.
1. Exprimer les dépendances fonctionnelles suivantes :
Un enseignant ne peut enseigner dans deux salles différentes pour le même créneau horaire (date et heure)
Un élève ne peut se trouver dans deux salles différentes pour le même créneau horaire (date et heure)
Les séances sont assurées par un enseignant unique et se rattachent à une UE unique.
2. Donnez une clé possible pour ce schéma.
Exercice 5
Soit le schéma relationnel suivant :
Billet(num_train, type_train, num_voiture, num_place, date, id_passager, nom_passager, prénom_passager, date_naissance, gare_montée, horaire_montée, gare_descente, horaire_descente, classe, tarif)
NB :
Sur un réseau ferroviaire, un numéro de train désigne une ligne directe depuis la gare de départ jusqu'au terminus, avec des passages en gare à horaires fixes.
Le schéma décrit un billet direct (sans correspondance)
1. Exprimer les dépendances fonctionnelles suivantes :
Le numéro de train définit le type
Le numéro de train et le numéro de voiture détermine la classe
Le tarif dépend du type de train, de la classe et du trajet
Un train ne peut passer dans une même gare à deux horaires différents.
Il existe un identifiant unique pour chaque passager
Pour ne date donnée, deux passagers ne peuvent être en même temps à la même place (mais plusieurs passagers peuvent se succéder sur un même siège)
2. Trouvez d'autres dépendances fonctionnelles non exprimées ci-dessus
3. Lequel de ces ensembles d’attributs est une clé du schéma?
num_train
num_train, num_voiture, num_place
num_train, num_voiture, num_place, date
num_train, num_voiture, num_place, date, gare_montée
4. Trouver une autre clé qui utilise l'attribut id_passager
Exercice 6
Soit le schéma relationnel suivant :
Billet(code_vol, type_vol, num_place, date_départ, num_appareil, id_passager, nom_passager, prénom_passager, date_naissance, aéroport_départ, horaire_départ, aéroport_arrivée, horaire_arrivée, durée, classe, tarif)
Servant à décrire des vols affrétés par une compagnie aérienne .
Lequel de ces ensembles d’attributs n'est pas une clé du schéma?
code_vol, date_départ, horaire_départ, num_place
num_appareil, aéroport_départ, date_départ, num_place
code_vol, date_départ, id_passager
code_vol, date_départ, num_place
Exercice 7
Modifier le schéma relationnel suivant pour qu’il respecte la deuxième forme normale :
Appel(numéro_appelant, date, heure, numéro_destinataire, durée, nom_appelant, prénom_appelant, date_naissance, forfait)
Exercice 8
Soit l’ensemble d’attributs décrivant la commande d’un produit en une certaine quantité par un certain client:
E = {produit, quantité, prix_unitaire, montant, nom_client, prénom_client, téléphone, voie, ville, code_postal, pays, date, trimestre, mois, année}
Remarques:
- on suppose qu'il n'y a pas d'homonymes
- le téléphone est un téléphone fixe pouvant servir à plusieurs personnes
Essayez de trouver des dépendances fonctionnelles au sein de cet ensemble d’attributs.
A partir des dépendances définies précédemment, trouvez une clé du schéma de table “Commande” composé de l’ensemble de ces attributs :
Commande(produit, quantité, prix_unitaire, montant, nom_client, prénom_client, téléphone, voie, ville, code_postal, pays, date, trimestre, mois, année)
Cette table obéit-elle à la 2ème Forme Normale? à la 3ème Forme Normale? Indiquez les modifications à apporter pour obtenir un schéma normalisé.