Différence de clé: une clé primaire ne peut pas autoriser la valeur null et ne peut être créée qu'une seule fois dans une table. Une clé unique autorise la valeur null et peut être créée plusieurs fois dans une table. Les clés jouent un rôle important dans le stockage et la récupération des données.
Microsoft SQL est un système de gestion de base de données relationnelle développé par Microsoft. Sa fonction principale consiste à stocker et à récupérer des données à la demande d'autres applications logicielles s'exécutant sur le même ordinateur ou sur différents ordinateurs d'un réseau.
Les clés jouent un rôle important dans le stockage et la récupération des données. Les données stockées sur le serveur sont une série de tables avec des colonnes. Ces colonnes stockent différents types d'informations et peuvent être récupérées à l'aide d'instructions. La clé primaire et la clé unique sont deux types de clés qui déterminent la manière dont les données sont stockées dans le système.
Les objets de la base de données SQL Server sont organisés sous forme de tables et d'index et stockés sous la forme d'une collection de pages de 8 Ko. Les clés aident à déterminer où les informations sont stockées dans la base de données. Les deux clés sont différentes les unes des autres. Cependant, une clé primaire est un type de clé unique. Ils ont également des fonctions similaires mais offrent des fonctionnalités différentes.
Les clés primaires sont définies via la contrainte PRIMARY KEY et peuvent être spécifiées lors de la création de la table. Dans SQL Standard, les clés primaires peuvent être composées d'une ou de plusieurs colonnes. Chaque colonne participant à la clé primaire est définie implicitement comme NOT NULL. Une clé primaire offre 3 fonctions principales:
Chaque table ne peut pas avoir plus d'une clé primaire.
Sur certains systèmes de base de données, une clé primaire crée un index en cluster par défaut.
Les clés uniques sont similaires aux clés primaires et peuvent être définies lors de la création de la table. Les clés uniques permettent également aux données ou aux lignes de ne pas être répétées dans une autre table. Les 3 fonctionnalités principales qu'une offre de clé unique comprend:
Une clé unique peut autoriser une valeur NULL, mais une seule (une clé unique peut être définie sur des colonnes autorisant des valeurs NULL).
Chaque table peut avoir plusieurs clés uniques.
Sur certains systèmes de base de données, une clé unique crée par défaut un index non cluster.
Comparaison entre clé primaire et clé unique:
Clé primaire | Clé unique | |
Définition | La clé primaire est un type de clé unique. C'est la clé qui est autorisée à migrer vers d'autres entités pour définir les relations existant entre les entités. | Une clé unique est un ensemble de zéro, un ou plusieurs attributs. La ou les valeurs de ces attributs doivent être uniques pour chaque tuple (ligne) d'une relation. La valeur, ou la combinaison de valeurs, d'attributs de clé uniques pour un tuple ne doit pas être répétée pour un autre tuple dans cette relation. |
Utilisé dans | Systèmes de gestion de bases de données relationnelles tels que MySQL, Oracle, etc. | Systèmes de gestion de bases de données relationnelles tels que MySQL, Oracle, etc. |
Valeurs nulles | N'accepte aucune valeur NULL | Accepte une seule valeur null dans la table |
Type d'index | Est un index en cluster et les données de la table de base de données sont physiquement organisées dans la séquence d'index en cluster | Est un index unique non-cluster |
Nombre de clés autorisées | Une seule clé primaire dans une table | Peut avoir plus d'une clé unique dans une table |
Convertible | Peut être transformé en une clé étrangère dans une autre table | Peut être transformé en une clé étrangère dans une autre table |