Chiave primaria
# Chiave primaria

Una chiave primaria o Primary Key, nel modello relazionale delle basi di dati, è un insieme di attributi che permette di individuare univocamente un record o tupla o ennupla in una tabella o relazione.

Connesso al concetto di chiave primaria c'è quello della chiave esterna o Foreign Key è invece un insieme di attributi che fa riferimento a una chiave di un'altra tabella, permettendo in tal modo di esplicitare relazioni di tipo uno a molti tra tabelle attraverso quello che è chiamato vincolo di integrità referenziale.

## Descrizione

La chiave primaria è costituita da una o più colonne della tabella (in questo secondo caso viene definita chiave composta). La chiave primaria è unica per ogni tabella. L'esistenza della chiave primaria, che al più è formata da tutti gli attributi o campi dato della relazione, è garantita dall'unicità delle n-uple (o tuple) individuate da una relazione tra n insiemi. Una tabella deve obbligatoriamente possedere una e una sola chiave primaria, e nessun record nella tabella può avere il valore, o i valori, di un campo attributo identificato dalla chiave primaria identico a quello di un qualsiasi altro valore della stessa (vincolo di unicità): il tentativo di inserimento di un tale valore genera un errore di violazione della chiave primaria.

## Esempi

Alcuni esempi di chiave primaria possono essere: il codice fiscale per la tabella contenente il personale di un'azienda (tuttavia va prestata attenzione all'omocodia), il codice IMEI per la tabella contenente gli smartphone in uso in un'azienda, il numero della carta di credito, ecc.

