Om tot een goed georganiseerde database te komen is het aan te raden om gegevens eerst te normaliseren. Dit klinkt misschien moeilijker dan het eigenlijk is, maar normalisatie is niets minder dan het ontwerpproces van de database. In dit proces komt dus de uiteindelijke database tot stand.
Bij het normaliseren voor de database nemen we gegevens over uit een bepaald proces. We gaan vervolgens deze gegevens extraheren tot kleine groepjes. Tijdens het extraheren proberen we te voorkomen dat gegevens dubbel worden opgeslagen.
Met de gegevens die we hebben genormaliseerd kunnen we de uiteindelijke tabellen vormen. En deze tabellen samen slaan we we op in de database.
Waarom gegevens normaliseren voor database ontwerp?
We willen gegevens normaliseren, omdat we het opslaan van dubbele gegevens in de database willen voorkomen. De reden hiervoor is dat het bijhouden van dubbele gegevens foutgevoelig is. Het risico bestaat namelijk dat er in een van de plekken een foutje ontstaat. Denk hierbij aan een foutief adres of een spelfout in een achternaam.
Stel dat we bijvoorbeeld klant,- en ordergegevens in dezelfde tabel opslaan. Wanneer bijvoorbeeld de klantgegevens veranderen, dan moeten we dus elk record met deze gegevens aanpassen. Als beide gegevens zijn gescheiden (genormaliseerd), dan hoeven we slechts 1 record aan te passen.
advertentie
Wat zijn de risico’s van niet normaliseren?
Het is aan de ontwerper/ontwikkelaar zelf om te bepalen of hij gegevens voor de database gaat normaliseren. Bij het niet normaliseren, is er het volgende risico aanwezig:
- Redundantie: Elke keer als we de gegevens nogmaals opslaan, dan bestaat er de kans dat we één keer iets verkeerd invoeren.
Hoe werkt het normalisatie proces?
Tijdens het normalisatie proces, gaan we unieke gegevens strippen en onderbrengen in categorieën.
Zo vormt bij een bestelling de klant met zijn gegevens een eigen categorie. Maar ook de productgegevens zijn een mogelijke categorie. En ten slotte vormen de ordergegevens ook een eigen categorie.
Elke categorie wordt uiteindelijk een tabel in de database.
De verschillende normaalvormen
Omdat het normaliseren voor de database uit meerdere vormen bestaat, is er een onderverdeling gemaakt tussen de verschillende normaalvormen:
- 0de Normaalvorm
- 1de Normaalvorm
- 2de Normaalvorm
- 3de Normaalvorm
- Boyce-Codd normaalvorm