Les valeurs des colonnes de la clé unique doivent être uniques mais, au contraire de la clé primaire, elles peuvent être NULL.
Ce qui veut dire que la clé unique est tout à fait équivalente à un indexe unique.
Mais il faut savoir que sans la clé unique, les colonnes ne peuvent pas être utilisées comme clés étrangères.
-
Clé étrangère :
-
clé unique :
-
Indexe unique :
Détails de l'erreur :
-
Insérer des valeurs NULL :
Il est possible d'insérer plusieurs lignes avec des valeurs NULL pour la colonne qui forme la clé unique ou l'indexe unique.
Dans le cas d'une contrainte (ou indexe) composée de plusieurs colonnes, alors il faut que toutes les valeurs de ces colonnes soient NULL.
Il est important de retenir qu'un indexe conventionnel (B*Tree) n'insère pas d'entrées pour les valeurs NULL.