Splitsen N:M relatie
In de vorige les hebben we de eerste stappen van het normaliseren geleerd.
Stap 1, maak een lijst
Stap 2, splits waar nodig de attributen
Stap 3, splits waar nodig in twee entiteiten
Nu gaan we nog een stap toevoegen.
In onze vorige les hadden we het over leerlingen en hun studiecoach. In dat voorbeeld had één studiecoach meerdere leerlingen maar een leerling had één studiecoach.
De relatie studiecoach:leerling was 1:N
Maar het kan ook anders, namelijk:
De relatie studiecoach:leerling is N:M
Dat betekent dat een studiecoach meerdere leerlingen heeft, maar dat andersom ook geldt dat een leerlingen meerdere studiecoaches heeft.
Laten we de stappen nog een keer doorlopen met dit nieuwe voorbeeld:voorbeeld.
Stap1, maak een lijst
In dit voorbeeld heeft Bailey Spears twee studiecoaches.
Stap 2, splits attributen
Is in dit voorbeeld al gedaan dus hoeft niet verder meer.
Stap 3, splits waar nodig in entiteiten
We moeten nu ook splitsen, maar omdat we meer studiecoaches per leerling kunnen hebben moeten we anders splitsen. Let op dat in het voorbeeld er twee studiecoaches bij één leerling horen. Het zou ook zo kunnen zijn dat er drie of nog meer studiecoaches aan één leerling kunnen worden gekoppeld.
Als we dit soort situaties tegen komen waar de relatie N:M is. dan moeten we splitsen via een koppelentiteit.
We zien nu drie entiteiten; leerling, studiecoach en de koppelentiteit. Kijk goed naar de nummers in de koppelentiteit. Zie je hoe de koppeling werkt?