tausen ha chiesto in Matematica e scienzeIngegneria · 1 decennio fa

Basi di Dati: definizione di chiave esterna?

Ciao a tutti! non so se "chiave esterna" viene chiamata anche in un altro modo, sta di fatto che non riesco a trovare una spiegazione chiara con qualche esempio.

Qualcuno può spiegarmelo nel modo più semplice possibile facendomi un esempio?

grazie

D.

Aggiornamento:

Grazie per la chiara risposta. Per entrare nello specifico, ho queste 2 relazioni:

- corso (CODICE, nome, docente (chiave esterna di "docenti"), cfu, orelezione)

- docenti (CF, cognome, nome, corso principale (chiave esterna)

il quesito è questo:

Ipotizzando che la chiave esterna "docente" possa assumere valore nullo, ne consegue che ci sono tanti corsi quanti sono i docenti?

- sì, perchè ___________

- no, perchè __________

- non si può stabilire perché __________

grazie ancora

1 risposta

Classificazione
  • 1 decennio fa
    Risposta preferita

    Una chiave esterna è un vincolo per creare un riferimento tra due tabelle.

    La chiave esterna identifica una colonna di una tabella che si ricollega ad una colonna o un insieme di un'altra tabella.

    AD esempio hai una tabella con i dati di tutti gli impiegati nella tua azienda (nome, matricola, reparto, ecc) e una tabella con gli addetti ad una particolare mansione (nome addetto, compito, ecc). In questo caso "nome adetto" nella tabella della particolare mansione è una chiave esterna che si ricollega a "nome" nella tabella contente tutti gli impiegati.

    Spero di essere stata chiara, altrimenti chiedi pure :)

    ______________________________________________________________________________

    La risposta alla tua domanda è: No, perchè un docente può tenere più corsi.

    Anche se nella tabella DOCENTI troverai solo il corso principale del docente preso in esame, nella tabella CORSO puoi avere più corsi che sotto la voce "docente" abbiano lo stesso nome, quindi più lo stesso docente può tenere più corsi.

    Il caso in cui troveresti tanti docenti quanti corsi sarebbe quello in cui nella tabella CORSO la voce "docente" fosse una chiave primaria, cioè il nome del docente si potrebbe trovare solo una volta nella stessa colonna. Qui non hai specificato nulla quindi credo che per CORSO la chiave primaria fosse solo codice. Controlla comunque. :)

Altre domande? Fai una domanda e ottieni le risposte che cerchi.