Skip to main content

Database Design

Leerdoel

In deze module leren we normaliseren. Normaliseren is het opzetten van een goed database design.

ERD

In de praktijk vraag je wat een klant wil. De klant vertelt wat hij wil en jij zet dat om in een ERD.

In Database design level 1 heb je al kennis gemaakt met een ERD. Om je kennis op te halen kan je nog een keer naar de uitleg in e video kijken: https://web.microsoftstream.com/video/c4c62660-1c4f-4c89-b09b-948cf7559c86

Waarom normaliseren?

Als je goed normaliseert en dus een goed datamodel maakt dan zorg je ervoor dat je gegevens zo worden opgeslagen dat:

  • gegevens niet in tegenspraak zijn met elkaar
  • gegevens maar één keer worden opgeslagen
  • gegevens, maar op een plaats kunnen wijzigen

Wat je bijvoorbeeld niet wilt, is dat als je in een database iemand zijn geboortedatum vastlegt en dat je daarnaast ook de leeftijd vastlegt. Over een jaar of meer dan is iemand een jaar ouder en zijn de gegevens met elkaar in tegenspraak.

Of stel je hebt de prijs met en zonder BTW opgeslagen. Stel het BTW-tarief wijzigt dan moet je alle prijzen in de database opnieuw berekenen. Een goed database model zorgt ervoor dat dat niet hoeft.

Of stel je hebt iemand zijn naam verkeerd gespeld. Als je die aanpast in de database dan wil je dat één keer op één plek doen. Alleen op die manier weet je zeker dat je niets bent vergeten.

Zorgen dat gegevens maar één keer worden opgeslagen heet ook wel het voorkomen van redundantie.

Dus: voorkomen van redundantie is een het voorkomen van het dubbel vastleggen van gegevens.

Een goed datamodel bevat geen redundantie.