Cos'è una chiave straniera?

I database

sono composti da tabelle in cui vengono archiviati dati o informazioni. Una chiave straniera è un meccanismo in un database relazionale che consente all'associazione di tali tabelle o che le tabelle abbiano una relazione tra loro. Ci sono caratteristiche uniche che deve avere una chiave straniera. Deve essere una colonna o un gruppo di colonne in una tabella i cui valori stabiliscono una relazione con i valori in un'altra tabella nello stesso database.

Una chiave straniera garantisce che le righe in una tabella corrispondano alle righe in qualche altra tabella, stabilendo così relazioni o riferimenti a livello di database. La tabella contenente la chiave esterna è il "bambino" e l'altra tabella è il "genitore". È possibile che il valore di una chiave esterna sia nullo o vuoto e che si riferisca effettivamente o si riferisca a quella che è nota come la chiave primaria della tabella in cui si trova. Questo è noto come autoreferenziazione.

Bisogna avere una buona comprensione di ciò che una chiave primaria è prima di tentare di comprendere appieno il concetto dietro le chiavi straniere. Ad esempio, se ci sono due tabelle in un database che archiviano informazioni sui libri pubblicati per un sito Web che vende libri, una tabella potrebbe essere la tabella degli editori e l'altra tabella dei libri. La tabella degli editori potrebbe consistere in due colonne, una chiave primaria che è sempre unica per ogni record e una colonna Nome editore. Un minimo di tre colonne costituirebbe la tabella dei libri, con la chiave primaria o un identificatore univoco per ogni libro, i titoli dei libri e una colonna attraverso la quale sarebbe stata stabilita una relazione con la tabella degli editori. Quella colonna sarebbe la chiave straniera.

La chiave primaria per la tabella degli editori potrebbe essere qualcosa come "pub_id" con valori di: P01, P02, P03, ecc. Verrebbe stabilita una relazione con la tabella dei libri se contenesse una colonna Pub_ID con gli stessi valori. Questa sarebbe la chiave straniera che WouLD mette in relazione questa tabella figlio con il suo genitore: la tabella degli editori.

Una chiave esterna può, tuttavia, avere un nome di colonna diverso rispetto alla chiave principale a cui fa riferimento. La solida comprensione del funzionamento delle chiavi primarie ed estere è essenziale per mantenere l'integrità referenziale. Database molto grandi che sono composti da molte tabelle o che coinvolgono una tabella di giunzione presentano più di un tipo di relazione, che può complicare il compito di lavorare con le chiavi straniere.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?