Clé primaire vs clé unique
Une colonne ou un ensemble de colonnes, qui peuvent être utilisées pour identifier ou accéder à une ligne ou un ensemble de lignes dans une base de données est appelée une clé. Une clé unique est une clé qui peut identifier de manière unique une ligne dans un tableau dans le contexte des bases de données relationnelles. Une clé unique est composée d'une seule colonne ou d'un ensemble de colonnes. Une clé primaire est également une combinaison de colonnes dans un tableau qui identifie uniquement une ligne. Mais il est considéré comme un cas particulier de la clé unique.
Quelle est la clé unique?
Comme mentionné précédemment, la clé unique est une seule colonne ou un ensemble de colonnes qui peuvent identifier de manière unique une ligne dans un tableau. Ainsi, une clé unique est limitée de telle sorte qu'aucune valeur ne soit égale. Une propriété importante est que les clés uniques n'appliquent pas la contrainte non nulle. Puisque NULL représente l'absence de valeur, si deux lignes ont null dans une colonne, cela ne signifie pas que les valeurs sont égales. La colonne définie comme une clé unique ne permet qu'une seule valeur nulle dans cette colonne. Ensuite, cela peut être utilisé pour identifier cette ligne particulière uniquement. Par exemple, dans un tableau qui contient des informations sur les élèves, l'identification des élèves peut être définie comme une clé unique. Étant donné que deux étudiants ne peuvent avoir la même pièce d'identité qu'il identifie uniquement un seul étudiant. Ainsi, la colonne d'étudiant ID satisfait toutes les propriétés d'une clé unique. Selon la conception d'une base de données, un tableau peut avoir plus d'une clé unique.
Qu'est-ce que la clé primaire?
La clé primaire est également une colonne ou une combinaison de colonnes qui définissent de manière unique une ligne dans un tableau d'une base de données relationnelle. Une table peut avoir au plus une clé primaire. La clé primaire applique la contrainte implicite et non nul. Ainsi, une colonne définie comme la clé principale ne peut pas y avoir de valeurs nulles. La clé primaire peut être un attribut normal dans le tableau qui est garanti pour être unique, comme le numéro de sécurité sociale ou il peut être une valeur unique générée par le système de gestion de la base de données, comme un identifiant unique (GUID) dans Microsoft SQL Server. Les clés primaires sont définies par la contrainte de clé primaire dans la norme ANSI SQL. La clé primaire peut également être définie lors de la création du tableau. SQL permet à la clé primaire d'être constituée d'une ou plusieurs colonnes et chaque colonne incluse dans la clé primaire est implicitement définie pour ne pas être nul. Mais certains systèmes de gestion de bases de données nécessitent de fabriquer explicitement les colonnes de clés principales non nuls.
Différence entre la clé primaire et la clé unique
Même si la clé principale et la clé unique sont une ou plusieurs colonnes qui peuvent identifier de manière unique une ligne dans un tableau, ils ont des différences importantes. Plus important encore, un tableau ne peut avoir qu'une seule clé primaire alors qu'elle peut avoir plus d'une clé unique. La clé primaire peut être considérée comme un cas particulier de la clé unique. Une autre différence est que les clés primaires ont une contrainte implicite et non nulle tandis que la clé unique n'a pas cette contrainte. Par conséquent, les colonnes de clés uniques peuvent contenir ou non des valeurs nulles mais les colonnes de clé primaire ne peuvent pas contenir des valeurs nulles.