Bonsoir Fae,

Envoyé par
Fae
Quand on regarde la table QUALIFICATIONS on voit que la clé primaire de la table avion c'est type-avion
Soit la règle : Un employé donné peut piloter plus d’un type d’avion et un type d’avion donné peut être piloté par plusieurs employés.
Ainsi, le corps de la variable relationnelle QUALIFICATION peut être par exemple celui-ci :
id_emp type_avion
------ ----------
e01 type01
e01 type03
e01 type04
e02 type02
e02 type03
e02 type04
Si la clé primaire de cette variable était le singleton {type_avion}, cela voudrait dire que pour un type d’avion donné, il n’y aurait qu’un et un seul employé qualifié pour ce type d’avion, par exemple soit e01, soit e02 pour le type d’avion type03 : contradiction avec la règle. En conséquence, la clé primaire est composée de la paire {id_emp, type_avion} (1).

Envoyé par
Fae
et celui de EMPLOYES c'est id-emp
Cette fois-ci c’est d’accord.

Envoyé par
Fae
Moi je pense que tous ceci implique à dire que la table VOLS a pour clé primaire id-avion
En fonction de ma première remarque, je pense que vous saurez corriger l’erreur que vous commettez. Par ailleurs, il existe bien une association avec la table AVION, grâce à l’attribut id_avion qui joue le rôle de clé étrangère (fait référence à la table AVION) plutôt que de clé primaire de VOL...
____________________
(1) Je rappelle qu’une variable relationnelle est un ensemble, même chose pour une clé. C’est pour cela que j’utilise des accolades "{" et "}". De même, peu importe l’ordre des attributs dans la clé.
Une variable relationnelle est la conséquence d’un prédicat, c’est-à-dire que, pour un logicien, QUALIFICATION se lit :
L’employé id_emp est qualifié pour piloter le type d’avion type_avion.
Les tuples <e01 type01>, <e01 type03>, etc. sont les instances du prédicat.
Autre conséquence : comme tout prédicat, QUALIFICATION s’écrit au singulier.
Partager