Clé composite

Définition - Que signifie la clé composite?

Une clé composite, dans le contexte de bases de données relationnelles, est une combinaison de deux colonnes ou plus dans une table qui peut être utilisée pour identifier de manière unique chaque ligne de la table. L'unicité n'est garantie que lorsque les colonnes sont combinées; prises individuellement, les colonnes ne garantissent pas l'unicité.

Definir Tech explique la clé composite

Toute colonne pouvant garantir l'unicité est appelée clé candidate; cependant, une clé composite est un type spécial de clé candidate qui n'est formée que par une combinaison de deux colonnes ou plus. Parfois, la clé candidate n'est qu'une seule colonne, et parfois elle est formée en joignant plusieurs colonnes.

Prenons un exemple d'une certaine table dans la base de données d'une banque commerciale. Cette table est utilisée pour stocker les enregistrements des comptes bancaires des particuliers. En supposant que le tableau comporte des colonnes séparées pour le type de compte (C pour vérifier, S pour l'épargne, etc.), suivies d'une autre colonne pour l'année et le mois de création du compte, et d'une autre colonne pour un numéro séquentiel au cours de ce mois est évident qu'aucune de ces colonnes ne peut à elle seule identifier un compte - on peut en déduire qu'il y aurait plusieurs C dans la colonne «Type de compte», il y aurait plusieurs entrées pour mai 2008 dans la colonne «Date de création», et bientôt. Cependant, si les trois colonnes sont combinées, un enregistrement unique pour chaque compte est généré. Un numéro de compte hypothétique dans cet exemple serait "C 200807 001" pour le premier compte créé en juillet 2008, qui est un compte courant. Un autre est "S 201003 004" pour le quatrième compte d'épargne créé en mars 2010. Il s'agit d'une clé composite, c'est-à-dire d'une clé candidate qui garantit l'unicité uniquement lorsque deux colonnes ou plus sont jointes.

Une clé composite peut être définie comme clé primaire. Cela se fait à l'aide d'instructions SQL au moment de la création de la table. Cela signifie que les données de la table entière sont définies et indexées sur l'ensemble de colonnes défini comme clé primaire.