Différence entre la clé primaire et la clé unique

Différence entre la clé primaire et la clé unique

La clé principale et la clé unique sont toutes deux des clés uniques dans une base de données relationnelle qui garantit l'unicité des valeurs d'une colonne ou d'un ensemble de colonnes. Il existe déjà une contrainte de clé unique prédéfinie dans une contrainte de clé primaire. Alors qu'une clé primaire est particulièrement utilisée pour identifier chaque enregistrement dans le tableau, une clé unique, en revanche, est utilisée pour empêcher les entrées en double dans une colonne à l'exception d'une entrée nul. Cependant, les deux clés peuvent contenir plus d'une seule colonne à partir d'une table donnée et ils jouent tous les deux un rôle crucial dans le stockage et la récupération des données. Les données sont une série de tables avec des colonnes et ces colonnes stockent des informations de tous types qui peuvent être accessibles ou récupérées en utilisant des instructions. C'est là que les clés viennent à l'image. La clé primaire et la clé unique sont deux clés uniques qui déterminent comment les données doivent être stockées dans le système.

Clé primaire

Une clé primaire (passe également par mot clé primaire), est une clé unique dans une base de données relationnelle qui identifie chaque enregistrement dans un tableau de base de données. C'est en quelque sorte un identifiant unique, comme un numéro de sécurité sociale, un numéro de téléphone, un numéro de permis de conduire ou un numéro de plaque d'immatriculation de véhicule. Une base de données ne doit avoir qu'une seule clé primaire.

Une table dans une base de données contient une colonne ou un ensemble de colonnes qui contiennent des valeurs qui identifient de manière unique chaque ligne du tableau. Cette colonne ou un ensemble de colonnes est appelée la clé principale du tableau qui doit contenir des valeurs uniques et ne peut pas contenir de valeurs nuls. Sans clé primaire, la base de données relationnelle ne fonctionnera pas.

Une clé primaire est créée en définissant une contrainte de clé primaire lors de la création ou de la modification d'un tableau. Dans la norme SQL, une clé primaire peut contenir une ou plusieurs colonnes, tandis que chaque colonne est implicitement définie comme non nul. Si vous définissez une contrainte de clé primaire sur plusieurs colonnes, cela peut entraîner une duplication des valeurs dans une colonne, c'est pourquoi chaque combinaison de valeurs doit être unique pour toutes les colonnes.

Une clé primaire a les fonctions suivantes:

  • Chaque table doit avoir une et une seule clé primaire, pas plus d'un.
  • Une clé primaire ne peut pas contenir des valeurs nulles.
  • Il peut être composé d'une ou plusieurs colonnes.
  • Toutes les colonnes doivent être définies comme non nulles.
  • Une clé primaire est un index unique en grappe par défaut.

Clé unique

Une clé unique est un ensemble d'un ou plusieurs colonnes / champ d'un tableau qui identifient uniquement un enregistrement dans une table de base de données. La contrainte de clé unique s'assure que toutes les valeurs d'une colonne sont uniques dans la base de données. Tout comme une clé primaire, une clé unique peut également comprendre plus d'une colonne. Cependant, une clé unique ne peut accepter qu'une seule valeur nulle. Il n'y a pas deux lignes n'ont les mêmes valeurs dans une table de base de données.

Une clé unique est assez similaire à une clé primaire et peut être définie lors de la création du tableau. Lorsqu'une colonne ou un ensemble de colonnes est marquée comme unique dans le système de base de données relationnel, il vérifie l'intégrité des valeurs avant d'attribuer la contrainte afin d'empêcher que deux enregistrements aient des valeurs identiques dans une colonne particulière.

Unique est une contrainte sur une colonne de clé non primaire qui caractérise les éléments suivants:

  • Une contrainte clé unique garantit le caractère unique des valeurs.
  • Plusieurs clés uniques peuvent être définies sur une table.
  • Une colonne peut contenir une valeur nulle, mais une seule valeur nulle par colonne est autorisée.
  • Une clé unique peut créer un index non groupé par défaut.

Différence entre la clé primaire et la clé unique

1. Fonction

Une clé primaire est en quelque sorte un identifiant de clé unique qui identifie de manière unique une ligne dans une table de base de données, tandis qu'une clé unique identifie toutes les lignes possibles qui existent dans un tableau et pas seulement les lignes existantes.

2. Comportement

Une clé primaire est utilisée pour identifier un enregistrement dans une table de base de données, tandis qu'une clé unique est utilisée pour empêcher les valeurs en double dans une colonne à l'exception d'une entrée nul.

3. Indexage

Une clé primaire crée un index unique en cluster par défaut tandis qu'une clé unique est un index unique non groupé dans une table de base de données par défaut par défaut.

4. Valeurs nulles

Une clé primaire ne peut pas accepter les valeurs nulles dans une table de base de données alors qu'une clé unique ne peut accepter qu'une seule valeur nul dans le tableau.

5. Limite

Il ne peut y avoir qu'une seule et une seule clé principale sur une table, cependant, il peut y avoir plusieurs clés uniques pour une table dans un système de base de données.

Clé primaire vs. Clé unique

Clé primaire

Clé unique

Une clé primaire est utilisée pour identifier de manière unique un enregistrement / ligne dans une table de base de données. Une clé unique est utilisée pour identifier de manière unique toutes les lignes possibles dans un tableau et pas seulement les lignes existantes.
Il n'accepte pas les valeurs nulles. Il ne peut accepter qu'une seule valeur nulle dans un tableau.
Il est index en grappe par défaut, ce qui signifie que les données sont organisées dans la séquence d'index en cluster. Il s'agit d'un index unique non groupé par défaut.
Il ne peut y avoir qu'une seule clé primaire dans un tableau. Une table peut avoir plusieurs clés uniques.
La clé primaire est définie en utilisant la contrainte de clé primaire. La clé unique est représentée en utilisant une contrainte unique.
Utilisé pour identifier une ligne dans un tableau. Utilisé pour éviter les valeurs en double dans une colonne.
Les valeurs de clé primaire ne peuvent pas être modifiées ou supprimées. Les valeurs de clés uniques peuvent être modifiées.

Résumé

  • La clé primaire et la clé unique sont les contraintes d'intégrité des entités qui sont similaires dans de nombreux aspects. Cependant, ils ont leur juste part de différences en matière de programmation. Les deux sont des concepts essentiels qui sont principalement utilisés dans les systèmes de gestion des bases de données.
  • La clé primaire est un ensemble d'une ou plusieurs colonnes / champs d'une table de base de données qui identifient uniquement un enregistrement dans un tableau. La clé unique, en revanche, empêche deux enregistrements d'avoir des valeurs identiques dans une colonne.
  • Conceptuellement, il ne peut y avoir qu'une seule clé principale pour un tableau donné, alors qu'il peut y avoir plus d'une clé unique pour un tableau.
  • Une clé primaire doit être unique mais une clé unique ne doit pas nécessairement être la clé principale.
  • Une clé primaire ne peut pas accepter les valeurs nulles dans un tableau, tandis qu'une clé unique peut permettre des valeurs nulles à une exception d'un seul nul dans un tableau.