![Citation](https://forum.developpez.be/images/misc/quote_icon.png)
Envoyé par
Xenofexs
Si j'ai rajouté ces " #objet", c'est pour signifier qu'elles sont ET primaires ET étrangères...
"#attribut" aurait été plus heureux comme dénomination.
Lorsqu'un attribut est à la fois clé primaire et clé étrangère, on peut l'indiquer comme ceci :
Interview (id_journaliste#, id_personnalité#)
(ce que j'ai oublié de faire dans ma réponse, d'ailleurs)
ou comme ceci :
Interview (#id_journaliste, #id_personnalité)
ou encore :
Interview (id_journaliste, id_personnalité)
(id_journaliste référence la table Journaliste, id_personnalité référence la table Personnalité)
Bref, on fait comme on veut car il s'agit d'une convention. De même le soulignement des clés primaires est aussi une convention. Etant donné que le prof en a imposé une, il vaut mieux la respecter pour tout travail dans le cadre de son cours mais il faut savoir qu'ailleurs (dans une entreprise, par exemple) une autre convention sera peut-être en vigueur.
Par contre, répéter un attribut dans une table comme seul but d'indiquer qu'il s'agit d'une clé étrangère n'a pas de sens puisqu'en faisant cela, on crée artificiellement des colonnes supplémentaires dans la table.
Partager