I en en-till-många-relation kan varje rad i den relaterade tabellen relateras till många rader i den relaterade tabellen. Detta gör att ofta använd information kan sparas endast en gång i en tabell och refereras många gånger i alla andra tabeller. I en one-to-many-relation mellan tabell A och tabell B är varje rad i tabell A kopplad till 0, 1 eller många rader i tabell B. Antalet rader i tabell A är nästan alltid mindre än antalet rader i tabell B.
För att illustrera one-to-many-relationen kan man titta på exempeltabellens utformning och data nedan:
författare tabell
kolumn |
|
författare_id |
primärnyckel |
förnamn |
|
förnamn |
|
|
.
book table
column |
|
book_id |
primary key |
title |
|
author_id |
foreign key – Länk till author_id i författartabellen |
author_id |
lastname |
firstname |
0001 |
henry |
john |
0002 |
smith |
adam |
0003 |
johnson |
mary |
0004 |
bailey |
harry |
book_id |
title |
author_id |
0001 |
En grundbok om databaser |
0001 |
0002 |
Bygg ett datawarehouse |
0001 |
0003 |
Lär dig själv SQL |
0001 |
0004 |
101 exotiska recept |
0002 |
0005 |
Visiting europe |
0004 |
Bemärk att varje rad i tabellen över författare är relaterad till 0, 1 eller många rader i tabellen böcker. Detta är intuitivt logiskt eftersom en författare kan skriva 0, 1 eller fler än 1 böcker. I vårt exempel ovan har John Henry skrivit 3 böcker, Adam Smith har skrivit 1 bok, Mary Johnson har inte skrivit någon bok och Harry Bailey har skrivit 1 bok.
Om du uppmärksammar noga är ovanstående relation mellan tabellen författare och tabellen böcker en one-to-many-relation. Om man vänder på det, är förhållandet mellan tabellen böcker och tabellen författare ett många-till-en-förhållande.
Se även: Relationer: En-till-en-relationer och Många-till-många-relationer
.