Différence entre clé primaire et clé candidate
Quelle est la différence entre clé primaire et clé candidate ? – Les clés sont des attributs ou un ensemble d’attributs utilisés pour accéder aux tuples d’une table ou pour créer une relation entre deux tables. Dans cet article, nous allons discuter de la clé primaire et de la clé candidate et des différences entre elles. La clé primaire et la clé candidate identifient de manière unique un tuple dans une relation ou une table. Mais la différence clé entre les deux est qu’il ne peut y avoir qu’une seule clé primaire dans une relation. Cependant, il peut y avoir plus d’une clé candidate dans une relation.
Table de comparaison
Clé primaire | Clé candidate | |
---|---|---|
Définition | On ne peut y avoir qu’une seule clé primaire dans toute relation. | On peut y avoir plus d’une clé candidate dans une relation. |
Valeur NULL | Aucun attribut d’une clé primaire ne peut contenir de valeur NULL. | L’attribut d’une clé Candidate peut avoir une valeur NULL. |
Reversible | Une clé primaire est une clé candidate. | Mais il n’est pas obligatoire que chaque clé candidate soit une clé primaire. |
Spécifier | Il est facultatif de spécifier une clé primaire pour toute relation. | Il ne peut pas y avoir de relation sans clé candidate spécifiée. |
Définition de la clé primaire
Une clé primaire est une colonne ou une combinaison de colonnes identifiant de manière unique un enregistrement. Une seule clé candidate peut être la clé primaire.
Exemple:
Employee{ID, First_name, Last_name, Salary, Age, Address}
Nous allons d’abord chercher les clés candidates. On a trouvé deux clés candidates (ID) et (First_name, Last_name) car elles identifient de manière unique chaque employé dans la relation EMPLOYEE. Maintenant, ici, on choisira ID comme clé primaire, car parfois il peut arriver que deux employé aient le même prénom et le même nom, il sera donc facile de retrouver un employé avec son identifiant.
Définition de la clé candidate
Une clé candidate peut être une colonne ou une combinaison de colonnes pouvant être qualifiée d’une clé unique dans la base de données. Il peut y avoir plusieurs clés candidates dans une table. Chaque clé candidate peut être qualifiée de clé primaire.
Exemple:
Employee{ID, First_name, Last_name, Salary, Age, Address, Dept_name}
Ici, on peux trouver deux clés candidates qui sont (ID) et (First_name, Last_name, Dept_name). Vous pouvez donc comprendre que les clés candidates identifient de manière unique un tuple dans une relation.
Différences clés entre la clé primaire et la clé candidate
- La différence entre la clé primaire et la clé candidate est qu’il ne peut y avoir qu’une seul clé primaire pour toute relation dans un schéma. Cependant, il peut y avoir plusieurs clés candidates pour une même relation.
- Il est facultatif de spécifier une clé primaire, mais il ne peut y avoir de relation sans clés candidates.
- L’attribut sous la clé primaire ne peut jamais contenir de valeur NULL car la fonction principale de la clé primaire est d’identifier de manière unique un enregistrement en relation. Même une clé primaire peut être utilisée comme clé étrangère dans une autre relation et, par conséquent, elle ne doit pas être NULL pour que la relation de référencement puisse trouver les tuples dans une relation référencée. La clé candidate peut être NULL sauf si la contrainte d’attribut est spécifiée comme étant non nulle.
- Chaque clé primaire est une clé candidate, mais l’inverse n’est pas vrai.
Conclusion
C’est facultatif pour une relation de spécifier une clé primaire. Par contre, si vous déclarez une relation, les clés candidates doivent être présentes dans cette relation afin de construire une bonne relation.
Votre site est vraiment tres instructif.Je suis un informaticien professionnel et chercher dans le domaine et je suis maitre en science de l’ingenieur,courage et bravo.
Merci et bon courage à vous aussi 🙂