Differenza Tra Chiave Primaria E Chiave Univoca

Differenza Tra Chiave Primaria E Chiave Univoca
Differenza Tra Chiave Primaria E Chiave Univoca

Video: Differenza Tra Chiave Primaria E Chiave Univoca

Video: Differenza Tra Chiave Primaria E Chiave Univoca
Video: Chiave primaria e chiave candidata 2024, Aprile
Anonim

Chiave primaria vs chiave univoca

Una colonna o un insieme di colonne, che possono essere utilizzati per identificare o accedere a una riga oa un insieme di righe in un database, è chiamata chiave. Una chiave univoca è una chiave che può identificare in modo univoco una riga in una tabella nel contesto dei database relazionali. Una chiave univoca è composta da una singola colonna o da un insieme di colonne. Una chiave primaria è anche una combinazione di colonne in una tabella che identificano in modo univoco una riga. Ma è considerato un caso speciale della chiave univoca.

Cos'è la chiave unica?

Come accennato in precedenza, la chiave univoca è una singola colonna o un insieme di colonne che può identificare in modo univoco una riga in una tabella. Quindi, una chiave univoca è vincolata in modo tale che non ci siano due valori uguali. Una proprietà importante è che le chiavi univoche non applicano il vincolo NOT NULL. Poiché NULL rappresenta la mancanza di un valore, se due righe hanno NULL in una colonna, non significa che i valori siano uguali. La colonna definita come chiave univoca consente solo un singolo valore NULL in quella colonna. Quindi può essere utilizzato per identificare quella particolare riga in modo univoco. Ad esempio, in una tabella che contiene informazioni sullo studente, l'ID studente può essere definito come una chiave univoca. Poiché due studenti non possono avere lo stesso ID, identifica in modo univoco un singolo studente. Quindi la colonna ID studente soddisfa tutte le proprietà di una chiave univoca. A seconda del design di un database,una tabella può avere più di una chiave univoca.

Cos'è la chiave primaria?

La chiave primaria è anche una colonna o una combinazione di colonne che definisce in modo univoco una riga in una tabella di un database relazionale. Una tabella può avere al massimo una chiave primaria. La chiave primaria applica il vincolo NOT NULL implicito. Pertanto, una colonna definita come chiave primaria non può contenere valori NULL. La chiave primaria può essere un normale attributo nella tabella che è garantito essere univoco come il numero di previdenza sociale o potrebbe essere un valore univoco generato dal sistema di gestione del database come un GUID (Globally Unique Identifier) in Microsoft SQL Server. Le chiavi primarie vengono definite tramite il vincolo PRIMARY KEY in ANSI SQL Standard. La chiave primaria può anche essere definita durante la creazione della tabella. SQL consente che la chiave primaria sia composta da una o più colonne e ogni colonna inclusa nella chiave primaria è definita implicitamente come NOT NULL. Ma alcuni sistemi di gestione di database richiedono che le colonne della chiave primaria siano esplicitamente NOT NULL.

Differenza tra chiave primaria e chiave univoca

Anche se sia la chiave primaria che la chiave univoca sono una o più colonne che possono identificare in modo univoco una riga in una tabella, presentano alcune differenze importanti. Ancora più importante, una tabella può avere solo una singola chiave primaria mentre può avere più di una chiave univoca. La chiave primaria può essere considerata un caso speciale della chiave univoca. Un'altra differenza è che le chiavi primarie hanno un vincolo NOT NULL implicito mentre la chiave univoca non ha quel vincolo. Pertanto, le colonne chiave univoche possono o non possono contenere valori NULL ma le colonne chiave primaria non possono contenere valori NULL.

Raccomandato: