In generale, una CHIAVE è una colonna (o una combinazione di colonne) che identifica in modo univoco ogni riga della tabella. È possibile avere più CHIAVI in una tabella (ad esempio, potresti avere una Person
tabella dove sia il numero di previdenza sociale che un numero autocrescente sono entrambi CHIAVI).
Il progettista del database ne sceglie uno di queste CHIAVI sarà la CHIAVE PRIMARIA. Concettualmente, non importa quale KEY viene scelta come CHIAVE PRIMARIA. Tuttavia, poiché la CHIAVE PRIMARIA viene solitamente utilizzata per fare riferimento a voci in questa tabella da altre tabelle (tramite CHIAVI STRANIERE), la scelta di una buona CHIAVE PRIMARIA può essere rilevante rispetto a t. (a) performance e (b) manutenibilità :
(a) Poiché la chiave primaria viene solitamente utilizzata nei JOIN, l'indice sulla chiave primaria (la sua dimensione, la sua distribuzione, ...) è molto più rilevante per la performance rispetto ad altri indici.
(b) Poiché la chiave primaria viene utilizzata come chiave esterna in altre tabelle, modifica il valore della chiave primaria è sempre una seccatura, poiché anche tutti i valori della chiave esterna nelle altre tabelle devono essere modificati.