- Le chiavi svolgono un ruolo importante nel database relazionale.
- Viene utilizzato per identificare in modo univoco qualsiasi record o riga di dati dalla tabella. Viene utilizzato anche per stabilire e identificare le relazioni tra tabelle.
Per esempio, L'ID viene utilizzato come chiave nella tabella Studenti perché è univoco per ogni studente. Nella tabella PERSONA, numero_passaporto, numero_licenza, SSN sono chiavi poiché sono univoche per ogni persona.
Tipi di chiavi:
1. Chiave primaria
- È la prima chiave utilizzata per identificare in modo univoco una e una sola istanza di un'entità. Un'entità può contenere più chiavi, come abbiamo visto nella tabella PERSON. La chiave più adatta da questi elenchi diventa una chiave primaria.
- Nella tabella EMPLOYEE, l'ID può essere la chiave primaria poiché è univoca per ciascun dipendente. Nella tabella EMPLOYEE possiamo anche selezionare License_Number e Passport_Number come chiavi primarie poiché anch'esse sono univoche.
- Per ciascuna entità, la selezione della chiave primaria si basa sui requisiti e sugli sviluppatori.
2. Chiave del candidato
- Una chiave candidata è un attributo o un insieme di attributi che possono identificare in modo univoco una tupla.
- Ad eccezione della chiave primaria, gli attributi rimanenti sono considerati una chiave candidata. Le chiavi candidate sono forti quanto la chiave primaria.
Per esempio: Nella tabella EMPLOYEE, id è più adatto come chiave primaria. Il resto degli attributi, come SSN, Passport_Number, License_Number, ecc., sono considerati una chiave candidata.
3. Super chiave
La super chiave è un set di attributi che può identificare in modo univoco una tupla. Una super chiave è un superset di una chiave candidata.
Per esempio: Nella tabella EMPLOYEE sopra, per(EMPLOEE_ID, EMPLOYEE_NAME), il nome di due dipendenti può essere lo stesso, ma il loro EMPLYEE_ID non può essere lo stesso. Quindi, questa combinazione può anche essere una chiave.
La super chiave sarebbe ID DIPENDENTE (ID DIPENDENTE, NOME DIPENDENTE), ecc.
4. Chiave esterna
- Le chiavi esterne sono la colonna della tabella utilizzata per puntare alla chiave primaria di un'altra tabella.
- Ogni dipendente lavora in un dipartimento specifico di un'azienda e dipendente e dipartimento sono due entità diverse. Quindi non possiamo memorizzare le informazioni del dipartimento nella tabella dei dipendenti. Ecco perché colleghiamo queste due tabelle tramite la chiave primaria di una tabella.
- Aggiungiamo la chiave primaria della tabella DEPARTMENT, Department_Id, come nuovo attributo nella tabella EMPLOYEE.
- Nella tabella EMPLOYEE, Department_Id è la chiave esterna ed entrambe le tabelle sono correlate.
5. Chiave alternativa
Potrebbero esserci uno o più attributi o una combinazione di attributi che identificano in modo univoco ciascuna tupla in una relazione. Questi attributi o combinazioni di attributi sono chiamati chiavi candidate. Una chiave viene scelta come chiave primaria tra queste chiavi candidate e la chiave candidata rimanente, se esiste, viene definita chiave alternativa. In altre parole, il numero totale delle chiavi alternative è il numero totale delle chiavi candidate meno la chiave primaria. La chiave alternativa può esistere o meno. Se in una relazione è presente una sola chiave candidata, non esiste una chiave alternativa.
Per esempio, La relazione Employee ha due attributi, Employee_Id e PAN_No, che fungono da chiavi candidate. In questa relazione, Employee_Id viene scelto come chiave primaria, quindi l'altra chiave candidata, PAN_No, funge da chiave alternativa.
inversione delle corde in c
6. Chiave composita
Ogni volta che una chiave primaria è composta da più di un attributo, è nota come chiave composta. Questa chiave è nota anche come chiave concatenata.
Per esempio, nelle relazioni con i dipendenti, presupponiamo che a un dipendente possano essere assegnati più ruoli e che un dipendente possa lavorare su più progetti contemporaneamente. Pertanto la chiave primaria sarà composta da tutti e tre gli attributi, vale a dire Emp_ID, Emp_role e Proj_ID in combinazione. Quindi questi attributi agiscono come una chiave composta poiché la chiave primaria comprende più di un attributo.
7. Chiave artificiale
Le chiavi create utilizzando dati assegnati arbitrariamente sono note come chiavi artificiali. Queste chiavi vengono create quando una chiave primaria è grande e complessa e non ha alcuna relazione con molte altre relazioni. I valori dei dati delle chiavi artificiali sono solitamente numerati in ordine seriale.
Per esempio, la chiave primaria, composta da Emp_ID, Emp_role e Proj_ID, è grande nelle relazioni con i dipendenti. Quindi sarebbe meglio aggiungere un nuovo attributo virtuale per identificare in modo univoco ciascuna tupla nella relazione.