In una relazione uno-a-molti, ogni riga nella tabella relativa a può essere collegata a molte righe nella tabella relativa. Questo permette alle informazioni usate frequentemente di essere salvate solo una volta in una tabella e referenziate molte volte in tutte le altre tabelle. In una relazione uno-a-molti tra la tabella A e la tabella B, ogni riga nella tabella A è collegata a 0, 1 o molte righe nella tabella B. Il numero di righe nella tabella A è quasi sempre inferiore al numero di righe nella tabella B.
Per illustrare la relazione uno-a-molti considerate il disegno della tabella di esempio e i dati qui sotto:
Tabella degli autori
colonna |
|
author_id |
chiave primaria |
cognome |
|
nome |
|
tabella dei libri
colonna |
|
id_libro |
chiave primaria |
titolo |
|
author_id |
chiave esterna – collegamento all’author_id della tabella degli autori |
author_id |
lastname |
firstname |
0001 |
henry |
john |
0002 |
smith |
adam |
0003 |
johnson |
mary |
0004 |
bailey |
harry |
id_libro |
titolo |
id_autore |
0001 |
Un’introduzione al database |
0001 |
0002 |
Costruire un datawarehouse |
0001 |
0003 |
Impara da solo SQL |
0001 |
0004 |
101 ricette esotiche |
0002 |
0005 |
Visitare l’Europa |
0004 |
Nota che ogni riga nella tabella autori è collegata a 0, 1 o molte righe nella tabella dei libri. Questo ha un senso intuitivo perché un autore può scrivere 0, 1 o più di 1 libro. Nel nostro esempio sopra, John Henry ha scritto 3 libri, Adam Smith ha scritto 1 libro, Mary Johnson non ha scritto nessun libro e Harry Bailey ha scritto 1 libro.
Se notate attentamente, la relazione di cui sopra tra la tabella autori e la tabella libri è una relazione uno a molti. Tornando indietro, la relazione tra la tabella dei libri e la tabella degli autori è una relazione molti a uno.
Vedi anche: Relazioni uno-a-uno e Relazioni molti-a-molti
.