Clé primaire
Une clé primaire est une valeur d’identification unique pour un enregistrement de base de données dans une table. Il s’agit généralement d’un nombre, souvent généré séquentiellement lorsque la base de données crée de nouveaux enregistrements, mais des chaînes de texte peuvent également être utilisées comme clés primaires si leur unicité est garantie. Les bases de données relationnelles utilisent les clés primaires pour créer des liens entre des enregistrements répartis dans des tables distinctes.
Lorsque vous créez une table, plusieurs options s’offrent à vous pour attribuer des clés primaires. Vous pouvez d’abord choisir une clé primaire à partir d’informations déjà présentes dans l’enregistrement, comme le numéro de téléphone d’un client ou son numéro de sécurité sociale ; ce type de clé primaire est appelé « clé naturelle ». Une « clé de substitution », en revanche, est une valeur générée uniquement pour servir de clé primaire. Un SGBD peut générer une clé de substitution de manière séquentielle à mesure qu’il ajoute de nouveaux enregistrements, ou générer à la place un nombre aléatoire ou un UUID. Si un DMBS doit supprimer un enregistrement, il conserve généralement la clé primaire de cet enregistrement et ne la réutilise pas.
Les bases de données relationnelles utilisent les clés primaires pour garantir l’unicité de chaque enregistrement d’une table et créer des liens entre des enregistrements répartis dans plusieurs tables. Par exemple, une base de données de clients peut inclure une table Customer Identification contenant des noms et des adresses e-mail, ainsi qu’une autre table Shipping Address contenant des adresses postales. La table Customer Identification peut utiliser un UUID généré dans le champ Customer ID comme clé primaire, ce qui permet aux clients de modifier leur nom sans changer la manière dont le SGBD fait référence à cet enregistrement. De son côté, la table Shipping Address enregistre chaque adresse de livraison du système comme un enregistrement distinct avec un numéro d’identification séquentiel qui augmente avec chaque nouvelle adresse. Ainsi, un enregistrement de la table Customer Identification peut associer chaque fiche client à une ou plusieurs adresses, en utilisant la clé primaire de la table des adresses comme clé étrangère dans un enregistrement client.
Testez vos connaissances