logo

Chiave del candidato nel DBMS

UN chiave candidata è una parte di una chiave nota come Super chiave ( discusso nella sezione precedente ), dove la super chiave è il super insieme di tutti quegli attributi che possono identificare univocamente una tabella.

Qui discuteremo della chiave candidata, del suo ruolo e del suo utilizzo. Vedremo anche alcuni esempi che ci faranno comprendere meglio il concetto di chiave candidata.

filigrana in parola

Che cos'è una chiave candidata

Una chiave candidata è un sottoinsieme di un set di super chiavi in ​​cui la chiave che non contiene attributi ridondanti non è altro che una Chiave del candidato . Per selezionare le chiavi candidate dal set di super chiavi, dobbiamo esaminare il set di super chiavi.

Ruolo di una chiave candidata

Il ruolo di una chiave candidata è identificare in modo univoco una riga o una colonna di una tabella. Inoltre, il valore di una chiave candidata non può essere Null. Secondo gli esperti, la descrizione di una chiave candidata non contiene 'attributi ridondanti' ed è una 'rappresentazione minima di una tupla'.

Differenza tra una chiave candidata e una chiave primaria

Sebbene lo scopo sia del candidato che della chiave primaria sia lo stesso, cioè identificare univocamente le tuple, e quindi anche loro sono diverse l'una dall'altra. Questo perché, in una tabella, possiamo avere una o più chiavi candidate, ma possiamo creare solo una chiave primaria per una tabella. Pertanto, dal numero di chiavi candidate ottenute, possiamo identificare la chiave primaria appropriata. Tuttavia, se in una tabella è presente una sola chiave candidata, è possibile considerarla per entrambi i vincoli di chiave.

Esempio di chiave candidata

Diamo un'occhiata allo stesso esempio preso durante la discussione su Super Key per comprendere il funzionamento di una chiave candidata.

Abbiamo un DIPENDENTE_DETAIL tabella dove abbiamo i seguenti attributi:

Dip_SSN: Il numero SSN è memorizzato in questo campo.

json nell'esempio json

Dip_Id: Un attributo che memorizza il valore del numero di identificazione del dipendente.

stringa in Java

Nome_dip: Un attributo che memorizza il nome del dipendente che detiene l'ID dipendente specificato.

Emp_email: Un attributo che memorizza l'ID e-mail dei dipendenti specificati.

IL DIPENDENTE_DETAIL Di seguito viene riportata una tabella che aiuterà a comprendere meglio:

Chiave del candidato nel DBMS

Quindi, dalla tabella sopra, abbiamo ottenuto i super tasti indicati di seguito (discussi nella sezione precedente):

Chiave del candidato nel DBMS

Ora, da questi insiemi di superchiavi, possiamo ricavare le chiavi candidate. Per raccogliere le chiavi candidate, il modo migliore è analizzare e formare il più possibile le chiavi primarie. Quindi, dobbiamo identificare quei set dai set di super chiavi che da soli possono identificare l'intera tabella, o possiamo dire gli altri attributi della tabella. Pertanto, il risultato è:

Chiave del candidato nel DBMS

Quindi, questi sono i tre attributi ottenuti che possono identificare gli altri attributi non primi della tabella. Tutte queste sono le chiavi candidate e da cui possiamo scegliere l'attributo più appropriato che possa facilmente identificare tutti i record della tabella, che verrà descritto come Chiave primaria.

Differenza tra chiave candidata e super chiave

Dalle discussioni di cui sopra, possiamo avere i seguenti punti di differenza:

modello ip tcp
Super chiave Chiave del candidato
È il superset di tutti questi attributi che può identificare in modo univoco la tabella. È il sottoinsieme o la parte della chiave Super.
Non è affatto obbligatorio che tutte le superchiavi siano chiavi candidate. D'altra parte, tutte le chiavi candidate sono superchiavi.
L'attributo super key può essere NULL, il che significa che i suoi valori possono essere nulli. Un attributo che contiene una chiave candidata non può mai essere NULL, il che significa che i suoi valori non possono essere nulli.
Tutte le super chiavi si sono formate insieme per portare le chiavi candidate. Allo stesso modo, le chiavi candidate vengono messe insieme per creare chiavi primarie.
Il numero di super chiavi formate è sempre maggiore. In questo caso, le chiavi candidate sono inferiori alle superchiavi.

Pertanto, la super chiave è il super set, la chiave candidata è il sottoinsieme e la chiave primaria è il sottosottoinsieme della superchiave.