Clé primaire vs clé unique: quelle est la différence?

Table des matières:

Anonim

Qu'est-ce que la clé primaire?

Une contrainte de clé primaire est une colonne ou un groupe de colonnes dans une table qui identifie de manière unique chaque ligne de cette table. La clé primaire ne peut pas être un doublon, ce qui signifie que la même valeur ne peut pas apparaître plus d'une fois dans le tableau.

Une table doit avoir plusieurs clés primaires. La clé primaire peut être définie au niveau de la colonne ou de la table. Si vous créez une clé primaire composite, elle doit être définie au niveau de la table.

Dans ce tutoriel, vous apprendrez:

  • Qu'est-ce que la clé primaire?
  • Qu'est-ce qu'une clé unique?
  • Pourquoi utiliser la clé primaire?
  • Pourquoi utiliser Unique Key?
  • Caractéristiques de la clé primaire
  • Caractéristiques de la clé unique
  • Exemple de création de clé primaire
  • Exemple de création de clé unique
  • Différence entre la clé primaire et la clé unique
  • Qu'est-ce qui est mieux?

Qu'est-ce qu'une clé unique?

Une clé unique est un groupe d'un ou plusieurs champs ou colonnes d'une table qui identifient de manière unique un enregistrement de base de données.

Une clé unique est identique à une clé primaire, mais elle peut accepter une valeur nulle pour une colonne de table. Il ne peut pas non plus contenir des valeurs identiques. Les contraintes uniques sont référencées par la clé étrangère d'autres tables.

DIFFÉRENCES CLÉS

  • Il peut y avoir une clé primaire dans une table alors qu'il peut y avoir plusieurs clés uniques dans la table.
  • Le but de la clé primaire est de faire respecter l'intégrité de l'entité, tandis que le but de la clé unique est d'appliquer des données uniques.
  • Dans la clé primaire, l'index par défaut est en cluster tandis que dans la clé unique, l'index par défaut n'est pas en cluster
  • La clé primaire n'autorise pas les colonnes nulles, tandis que la clé unique autorise les colonnes nulles.
  • Dans la clé primaire, les clés en double ne sont pas autorisées dans une clé unique, si une ou plusieurs parties de clé sont nulles, les clés en double sont autorisées.

Pourquoi utiliser la clé primaire?

Voici les raisons importantes d'utiliser la clé primaire:

  • L'objectif principal de la clé primaire est d'identifier chaque enregistrement dans la table de base de données.
  • Vous pouvez utiliser une clé primaire lorsque vous n'autorisez personne à entrer des valeurs nulles.
  • Si vous supprimez ou mettez à jour un enregistrement, l'action que vous avez spécifiée sera entreprise pour garantir l'intégrité des données de la base de données.
  • Exécutez l'opération de restriction pour rejeter l'opération de suppression ou de mise à jour de la table parent.
  • Les données sont organisées en séquence d'index clusterisé chaque fois que vous organisez physiquement la table du SGBD.

Pourquoi utiliser Unique Key?

Voici les raisons importantes d'utiliser une clé unique:

  • Le but d'une clé unique est de s'assurer que les informations de la colonne de chaque enregistrement de table sont uniques.
  • Lorsque vous autorisez l'utilisateur à entrer la valeur nulle.
  • La clé unique est utilisée car elle crée un index non clusterisé par défaut.
  • Une clé unique peut être utilisée lorsque vous devez conserver des valeurs nulles dans la colonne.
  • Lorsqu'un ou plusieurs champs / colonnes d'une table identifient de manière unique un enregistrement dans une table de base de données.

Caractéristiques de la clé primaire

Voici les caractéristiques importantes de la clé primaire:

  • La clé primaire implémente l'intégrité de l'entité de la table.
  • Vous ne pouvez conserver qu'un seul primaire dans le tableau.
  • La clé primaire contient une ou plusieurs colonnes de table.
  • Les colonnes sont définies comme non nulles.

Caractéristiques de la clé unique

Voici les caractéristiques importantes de la clé unique:

  • Vous pouvez définir plusieurs clés uniques dans la table.
  • Par défaut, les clés uniques se trouvent dans des index uniques non groupés.
  • Il est constitué d'une ou plusieurs colonnes de tableau.
  • La colonne de table peut être nulle, mais une seule valeur nulle par colonne est préférable.
  • Une contrainte unique peut être facilement référencée par une contrainte de clé étrangère.

Exemple de création de clé primaire

L'exemple suivant décrit qu'il existe une table appelée student. Il contient cinq attributs, 1) StudID, 2) Roll No, 3) First Name, 4) Last Name et 5) Email.

L'attribut Roll No ne peut jamais contenir une valeur en double ou nulle. C'est parce que chaque étudiant inscrit dans une université peut avoir un numéro de rôle unique. Vous pouvez facilement identifier chaque rangée d'une table avec le numéro de rôle de l'élève. Il est donc considéré comme une clé primaire.

Exemple de clé primaire

Exemple de création de clé unique

Considérez la même table d'étudiants avec les attributs, 1) StudID, 2) Roll No, 3) First Name, 4) Last Name et 5) Email.

Stud ID peut avoir une contrainte unique où les entrées dans la colonne Stud ID peuvent être uniques car chaque étudiant d'une université doit avoir un numéro d'identification unique. Dans le cas, si l'étudiant change d'université, dans ce cas, il ou elle n'aurait pas de carte d'identité de haras. L'entrée peut avoir une valeur nulle car une seule valeur nulle est autorisée dans la contrainte de clé unique.

Exemple de clé unique

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

Voici les différences importantes entre la clé primaire et la clé unique:

Clé primaire Clé unique
Il peut y avoir une clé primaire dans une table Il peut y avoir plusieurs clés uniques dans la table
Il n'autorise pas les colonnes nulles. Il autorise les colonnes nulles.
L'index par défaut est groupé L'index par défaut n'est pas groupé
Le but de la clé primaire est de faire respecter l'intégrité de l'entité. Le but de la clé unique est d'appliquer des données uniques.
La clé primaire peut être créée à l'aide de la syntaxe:
CREATE TABLE Employee(ID int PRIMARY KEY,Name varchar(255),City varchar(150))
Une clé unique peut être créée à l'aide de la syntaxe:
CREATE TABLE Employee(ID int UNIQUE.Name varchar(255) NOT NULL. City varchar(150))
C'est une contrainte SQL qui vous permet d'identifier de manière unique chaque enregistrement ou ligne de la table de base de données. C'est une contrainte SQL qui ne permet pas d'attribuer la même valeur à deux isolatedRecords dans une table de base de données.
Dans la clé primaire, les clés en double ne sont pas autorisées. Dans une clé unique, si une ou plusieurs parties de clé sont nulles, les clés en double sont autorisées.

Qu'est-ce qui est mieux?

  • Une clé unique est meilleure lorsque vous avez des colonnes dont vous savez qu'elles ne doivent pas contenir de duplication. Cela devient un bon moyen de garantir la validation des données.
  • La clé primaire est idéale lorsque vous ne pouvez pas conserver null dans la table. Il peut également être utilisé lorsque vous avez une clé étrangère dans une autre table pour créer une relation.