Accueil Bases de données Quelle est la différence entre une clé composite, une clé primaire et une clé étrangère?

Quelle est la différence entre une clé composite, une clé primaire et une clé étrangère?

Anonim

Q:

Quelle est la différence entre une clé composite, une clé primaire et une clé étrangère?

UNE:

Une clé primaire est définie comme une clé ou une colonne de base de données qui identifie de manière unique chaque ligne d'une table de base de données. Une clé composite est un ensemble de plusieurs clés qui, ensemble, identifie de manière unique chaque enregistrement.

Une clé étrangère, d'autre part, est une clé dans une table qui identifie de manière unique les lignes d'une autre table - ou, en d'autres termes, une clé qui effectue le suivi d'une clé primaire dans une autre table.

Un exemple serait une liste de maisons sur un marché immobilier. Dans une base de données bien ordonnée, il devrait y avoir une clé primaire qui identifie de manière unique chaque enregistrement. La façon dont cela fonctionne peut avoir à voir avec la sophistication de la base de données.

Dans certains cas, les maisons peuvent uniquement être identifiées de manière unique par un numéro d'hypothèque - toutes les autres données (villes, rues, numéros de maison) ne sont pas uniques à chaque enregistrement. Le numéro d'hypothèque serait la clé primaire. Supposons cependant que la technologie de référencement d'un agent immobilier MLS attribue ses propres numéros uniques aux enregistrements du tableau. Ensuite, il y aura deux clés que les développeurs pourraient identifier comme «clés candidates»: le numéro d'hypothèque et le numéro MLS. L'une d'elles sera qualifiée de «clé primaire» selon ce que certains considéreraient comme arbitraire.

Une clé composite serait alors la combinaison de deux clés: par exemple, la combinaison du numéro de rue et de la rue pourrait être considérée comme une clé composite, étant donné que les listes de marché sont locales. Si c'est le cas, lorsque quelqu'un effectue une recherche en utilisant à la fois le numéro de rue et la rue, il ne doit renvoyer qu'un seul enregistrement.

Pendant ce temps, s'il y a une clé dans une table liée, par exemple, la table d'un acheteur, qui fait référence à la clé primaire, ce sera une clé étrangère.

Quelle est la différence entre une clé composite, une clé primaire et une clé étrangère?