Skip to main content

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.

Stap1, maak een lijst

image-1632409442722.png

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.

image-1632410260924.png

We zien nu drie entiteiten; leerling, studiecoach en de koppelentiteit. Kijk goed naar de nummers in de koppelentiteit. Zie je hoe de koppeling werkt?