Chiavi DBMS: Candidate, Super, Primary, Foreign (esempio)

Sommario:

Anonim

Cosa sono le chiavi nel DBMS?

KEYS in DBMS è un attributo o un insieme di attributi che ti aiuta a identificare una riga (tupla) in una relazione (tabella). Ti permettono di trovare la relazione tra due tabelle. Le chiavi consentono di identificare in modo univoco una riga in una tabella mediante una combinazione di una o più colonne in quella tabella. La chiave è utile anche per trovare record o righe univoci dalla tabella. La chiave del database è utile anche per trovare record o righe univoci dalla tabella.

Esempio:

ID Dipendente Nome di battesimo Cognome
11 Andrea Johnson
22 Tom Legna
33 Alex Hale

Nell'esempio sopra riportato, l'ID dipendente è una chiave primaria perché identifica in modo univoco un record dipendente. In questa tabella, nessun altro dipendente può avere lo stesso ID dipendente.

In questo tutorial imparerai:

  • Cosa sono le chiavi?
  • Perché abbiamo bisogno di una chiave?
  • Varie chiavi nel sistema di gestione del database
  • Cos'è la Super Key?
  • Cos'è la chiave primaria?
  • Cos'è la chiave alternativa?
  • Cos'è la chiave candidata?
  • Cos'è la chiave esterna?
  • Cos'è la chiave composta?
  • Cos'è la chiave composita?
  • Cos'è la chiave surrogata?
  • Differenza tra chiave primaria e chiave esterna

Perché abbiamo bisogno di una chiave?

Di seguito sono riportati alcuni motivi per utilizzare la chiave sql nel sistema DBMS.

  • I tasti consentono di identificare qualsiasi riga di dati in una tabella. In un'applicazione reale, una tabella potrebbe contenere migliaia di record. Inoltre, i record potrebbero essere duplicati. Le chiavi assicurano che tu possa identificare in modo univoco un record di tabella nonostante queste difficoltà.
  • Consente di stabilire una relazione e identificare la relazione tra le tabelle
  • Aiutarti a rafforzare l'identità e l'integrità nella relazione.

Tipi di chiavi nel sistema di gestione del database

Esistono principalmente sette diversi tipi di chiavi nel DBMS e ogni chiave ha le sue funzionalità diverse:

  • Super chiave: una super chiave è un gruppo di chiavi singole o multiple che identifica le righe in una tabella.
  • Chiave primaria: è una colonna o un gruppo di colonne in una tabella che identifica in modo univoco ogni riga di quella tabella.
  • Candidate Key - è un insieme di attributi che identificano in modo univoco le tuple in una tabella. Candidate Key è una super chiave senza attributi ripetuti.
  • Chiave alternativa: è una colonna o un gruppo di colonne in una tabella che identifica in modo univoco ogni riga di quella tabella.
  • Chiave esterna: è una colonna che crea una relazione tra due tabelle. Lo scopo delle chiavi esterne è mantenere l'integrità dei dati e consentire la navigazione tra due diverse istanze di un'entità.
  • Chiave composta: ha due o più attributi che consentono di riconoscere in modo univoco un record specifico. È possibile che ogni colonna possa non essere univoca da sola all'interno del database.
  • Chiave composita: una chiave artificiale che mira a identificare in modo univoco ogni record è chiamata chiave surrogata. Questi tipi di chiavi sono univoci perché vengono creati quando non si dispone di alcuna chiave primaria naturale.
  • Chiave surrogata: una chiave artificiale che mira a identificare in modo univoco ogni record è chiamata chiave surrogata. Questi tipi di chiavi sono univoci perché vengono creati quando non si dispone di alcuna chiave primaria naturale.

Qual è la chiave Super?

Un superkey è un gruppo di chiavi singole o multiple che identifica le righe in una tabella. Una chiave Super può avere attributi aggiuntivi che non sono necessari per l'identificazione univoca.

Esempio:

EmpSSN EmpNum Empname
9812345098 AB05 Mostrato
9876512345 AB06 Roslyn
199937890 AB07 James

Nell'esempio sopra riportato, il nome EmpSSN e EmpNum sono superchiavi.

Cos'è una chiave primaria?

PRIMARY KEY è una colonna o un gruppo di colonne in una tabella che identifica in modo univoco ogni riga in quella tabella. La chiave primaria non può essere un duplicato, il che significa che lo stesso valore non può apparire più di una volta nella tabella. Una tabella non può avere più di una chiave primaria.

Regole per la definizione della chiave primaria:

  • Due righe non possono avere lo stesso valore di chiave primaria
  • Ogni riga deve avere un valore di chiave primaria.
  • Il campo della chiave primaria non può essere nullo.
  • Il valore in una colonna di chiave primaria non può mai essere modificato o aggiornato se una chiave esterna fa riferimento a quella chiave primaria.

Esempio:

Nell'esempio seguente, StudID è una chiave primaria.

StudID Rotolo n Nome di battesimo Cognome E-mail
1 11 Tom Prezzo Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
2 12 Nick Wright Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
3 13 Dana Natan Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.

Qual è la chiave alternativa?

CHIAVI ALTERNATE è una colonna o un gruppo di colonne in una tabella che identifica in modo univoco ogni riga in quella tabella. Una tabella può avere più scelte per una chiave primaria, ma solo una può essere impostata come chiave primaria. Tutte le chiavi che non sono chiavi primarie sono chiamate chiavi alternative.

Esempio:

In questa tabella, StudID, Roll No, Email sono qualificati per diventare una chiave primaria. Ma poiché StudID è la chiave primaria, Roll No, Email diventa la chiave alternativa.

StudID Rotolo n Nome di battesimo Cognome E-mail
1 11 Tom Prezzo Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
2 12 Nick Wright Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
3 13 Dana Natan Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.

Cos'è una chiave candidata?

CANDIDATE KEY è un insieme di attributi che identificano in modo univoco le tuple in una tabella. Candidate Key è una super chiave senza attributi ripetuti. La chiave primaria dovrebbe essere selezionata dalle chiavi candidate. Ogni tabella deve avere almeno una singola chiave candidata. Una tabella può avere più chiavi candidate ma solo una singola chiave primaria.

Proprietà della chiave candidata:

  • Deve contenere valori univoci
  • La chiave candidata può avere più attributi
  • Non deve contenere valori nulli
  • Dovrebbe contenere un numero minimo di campi per garantire l'unicità
  • Identifica in modo univoco ogni record in una tabella

Esempio: nella tabella indicata ID Stud, Roll No ed e-mail sono chiavi candidate che ci aiutano a identificare in modo univoco il record dello studente nella tabella.

StudID Rotolo n Nome di battesimo Cognome E-mail
1 11 Tom Prezzo Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
2 12 Nick Wright Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.
3 13 Dana Natan Questo indirizzo email è protetto dagli spambots. Devi abilitare JavaScript per vederlo.

Qual è la chiave esterna?

FOREIGN KEY è una colonna che crea una relazione tra due tabelle. Lo scopo delle chiavi esterne è mantenere l'integrità dei dati e consentire la navigazione tra due diverse istanze di un'entità. Funge da riferimento incrociato tra due tabelle poiché fa riferimento alla chiave primaria di un'altra tabella.

Esempio:

DeptCode DeptName
001 Scienza
002 inglese
005 Computer
ID insegnante Fname Lname
B002 David Ammonitore
B017 Sara Giuseppe
B009 Mike Brunton

In questa chiave nell'esempio dbms, abbiamo due tabelle, insegnamento e dipartimento in una scuola. Tuttavia, non è possibile vedere quale ricerca funziona in quale reparto.

In questa tabella, aggiungendo la chiave esterna in Deptcode al nome Insegnante, possiamo creare una relazione tra le due tabelle.

ID insegnante DeptCode Fname Lname
B002 002 David Ammonitore
B017 002 Sara Giuseppe
B009 001 Mike Brunton

Questo concetto è noto anche come integrità referenziale.

Qual è la chiave Compound?

COMPOUND KEY ha due o più attributi che consentono di riconoscere in modo univoco un record specifico. È possibile che ogni colonna possa non essere univoca da sola all'interno del database. Tuttavia, se combinata con l'altra colonna o le altre colonne, la combinazione di chiavi composite diventa univoca. Lo scopo della chiave composta nel database è identificare in modo univoco ogni record nella tabella.

Esempio:

Numero d'ordine PorductID nome del prodotto Quantità
B005 JAP102459 Topo 5
B005 DKT321573 USB 10
B005 OMG446789 Monitor LCD 20
B004 DKT321573 USB 15
B002 OMG446789 Stampante laser 3

In questo esempio, OrderNo e ProductID non possono essere una chiave primaria in quanto non identifica un record in modo univoco. Tuttavia, è possibile utilizzare una chiave composta di ID ordine e ID prodotto poiché identifica in modo univoco ogni record.

Qual è la chiave Composite?

COMPOSITE KEY è una combinazione di due o più colonne che identificano in modo univoco le righe in una tabella. La combinazione di colonne garantisce l'unicità, sebbene l'unicità singolarmente non sia garantita. Pertanto, vengono combinati per identificare in modo univoco i record in una tabella.

La differenza tra la chiave composta e la chiave composta è che qualsiasi parte della chiave composta può essere una chiave esterna, ma la chiave composita può o forse non fa parte della chiave esterna.

Cos'è una chiave surrogata?

CHIAVI SURROGATE è Una chiave artificiale che mira a identificare in modo univoco ogni record è chiamata chiave surrogata. Questo tipo di chiave parziale in dbms è univoco perché viene creato quando non si dispone di alcuna chiave primaria naturale. Non danno alcun significato ai dati nella tabella. La chiave surrogata è generalmente un numero intero. Una chiave surrogata è un valore generato subito prima che il record venga inserito in una tabella.

Fname Cognome Ora di inizio Tempo scaduto
Anne fabbro 09:00 18:00
Jack Francesco 08:00 17:00
Anna McLean 11:00 20:00
Mostrato Willam 14:00 23:00

Sopra, dato l'esempio, mostrava gli orari dei turni dei diversi dipendenti. In questo esempio, è necessaria una chiave surrogata per identificare in modo univoco ogni dipendente.

Le chiavi surrogate in sql sono consentite quando

  • Nessuna proprietà ha il parametro della chiave primaria.
  • Nella tabella quando la chiave primaria è troppo grande o complicata.

Differenza tra chiave primaria e chiave esterna

Chiave primaria Chiave esterna
Ti aiuta a identificare in modo univoco un record nella tabella. È un campo nella tabella che è la chiave primaria di un'altra tabella.
La chiave primaria non accetta mai valori nulli. Una chiave esterna può accettare più valori null.
La chiave primaria è un indice cluster ei dati nella tabella DBMS sono organizzati fisicamente nella sequenza dell'indice cluster. Una chiave esterna non può creare automaticamente un indice, cluster o non cluster. Tuttavia, puoi creare manualmente un indice sulla chiave esterna.
Puoi avere la singola chiave primaria in una tabella. Puoi avere più chiavi esterne in una tabella.

Sommario

  • Una chiave in SQL è un attributo o un insieme di attributi che ti aiuta a identificare una riga (tupla) in una relazione (tabella)
  • Le chiavi DBMS consentono di stabilire una relazione e identificare la relazione tra le tabelle
  • Sette tipi di chiavi DBMS sono Super, Primary, Candidate, Alternate, Foreign, Compound, Composite e Surrogate Key.
  • Una super chiave è un gruppo di chiavi singole o multiple che identifica le righe in una tabella.
  • Una colonna o un gruppo di colonne in una tabella che ci aiuta a identificare in modo univoco ogni riga in quella tabella è chiamata chiave primaria
  • Tutte le chiavi che non sono chiavi primarie sono chiamate chiavi alternative
  • Una super chiave senza attributo ripetuto è chiamata chiave candidata
  • Una chiave composta è una chiave che ha molti campi che consentono di riconoscere in modo univoco un record specifico
  • Una chiave che ha più attributi per identificare in modo univoco le righe in una tabella è chiamata chiave composta
  • Una chiave artificiale che mira a identificare in modo univoco ogni record è chiamata chiave surrogata
  • La chiave primaria non accetta mai valori null mentre una chiave esterna può accettare più valori null.