Le chiavi sono elementi fondamentali del database relazionale perché stabiliscono una relazione tra una coppia di tabelle e assicurano che ogni record in una tabella sia identificato in modo univoco. Le chiavi hanno un significato più particolare che stabilire relazioni; aiutano anche con l'integrità referenziale e sono un componente importante dell'integrità a livello di tabella. Le tabelle contengono enormi blocchi di dati che solitamente si estendono a migliaia di record, tutti non ordinati e disorganizzati. Recuperare un dato particolare da quei numerosi record può essere difficile a volte o talvolta impossibile. Qui è dove vengono le chiavi a dipingere. Qui, studieremo le due chiavi molto importanti dello schema del database relazionale e la differenza tra loro: chiave primaria e chiave esterna.
Una chiave primaria è una chiave speciale che identifica in modo univoco ogni record in una tabella. È molto importante che nel database relazionale sia presente un identificatore univoco in ogni riga di una tabella e la chiave primaria sia proprio ciò che è necessario per identificare in modo univoco una tupla all'interno di una tabella. Una tupla rappresenta un insieme di attributi di valore in un database relazionale. Una chiave primaria può fare riferimento a una colonna oa un set di colonne in una tabella di database relazionale utilizzata per identificare implicitamente tutti i record nella tabella. La chiave primaria deve essere univoca per ogni record poiché agisce come un identificatore univoco e non deve contenere valori Null. Ogni database deve avere una sola chiave primaria.
Una chiave esterna fa riferimento a un campo o una raccolta di campi in un record di database che identifica in modo univoco un campo chiave di un altro record di database in un'altra tabella. In termini semplici, stabilisce un collegamento tra i record in due diverse tabelle in un database. Può essere una colonna in una tabella che punta alle colonne della chiave primaria, il che significa che una chiave esterna definita in una tabella fa riferimento alla chiave primaria di un'altra tabella. Le referenze sono cruciali nei database relazionali per stabilire collegamenti tra i record che è essenziale per l'ordinamento dei database. Le chiavi esterne svolgono un ruolo importante nella normalizzazione del database relazionale, specialmente quando le tabelle devono accedere ad altre tabelle.
Una chiave primaria è una chiave speciale in un database relazionale che funge da identificatore univoco per ogni record, nel senso che identifica in modo univoco ogni riga / record in una tabella e il suo valore deve essere univoco per ogni riga della tabella. Una chiave esterna, d'altra parte, è un campo in una tabella che collega due tabelle insieme. Si riferisce a una colonna oa un gruppo di colonne che identifica in modo univoco una riga di un'altra tabella o della stessa tabella.
Una chiave primaria identifica univocamente un record nella tabella del database relazionale, mentre una chiave esterna fa riferimento al campo in una tabella che è la chiave primaria di un'altra tabella. Una chiave primaria deve essere unica e solo una chiave primaria è consentita in una tabella che deve essere definita, mentre più di una chiave esterna è consentita in una tabella.
Una chiave primaria è una combinazione di vincoli UNIQUE e Not Null, quindi non è possibile consentire la duplicazione di valori duplicati in un campo chiave primaria in una tabella di database relazionale. Non è consentito a due righe di riportare valori duplicati per un attributo di chiave primaria. A differenza di una chiave primaria, la chiave esterna può contenere valori duplicati e una tabella in un database relazionale può contenere più di una chiave esterna.
Una delle principali differenze tra i due è che a differenza delle chiavi primarie, le chiavi esterne possono contenere anche valori NULL. Una tabella in un database relazionale può avere solo una chiave primaria che non consente valori NULL.
Un vincolo di chiave primaria può essere definito implicitamente su tabelle temporanee e relative variabili, mentre un vincolo di chiave esterna non può essere applicato su tabelle temporanee locali o globali.
Un valore di chiave primaria non può essere eliminato dalla tabella padre che viene indicata come chiave esterna nella tabella figlio. È necessario eliminare la tabella figlio prima di rimuovere la tabella padre. Al contrario, un valore di chiave esterna può essere eliminato dalla tabella figlio anche se il valore è riferito alla chiave primaria della tabella padre.
Le chiavi svolgono un ruolo cruciale nell'esistenza dello schema del database per stabilire collegamenti tra tabelle e all'interno di una tabella. Le chiavi stabiliscono relazioni e impongono diversi tipi di integrità, in particolare l'integrità a livello di tabella e livello di relazione. Ad esempio, si assicurano che la tabella contenga record univoci e che i campi utilizzati per stabilire una relazione tra le tabelle debbano contenere valori corrispondenti. Chiave primaria e chiave esterna sono i due tipi più importanti e comuni di chiavi utilizzate nei database relazionali. Una chiave primaria è una chiave speciale utilizzata per identificare in modo univoco i record in una tabella, mentre una chiave esterna viene utilizzata per stabilire una relazione tra due tabelle. Entrambi sono identici nella struttura ma svolgono ruoli diversi nello schema del database relazionale.