Inhoud

Database normaliseren

De regels voor goed relationeel database-ontwerp zijn samengevat in 5 'normaalvormen', waarbij de eerste normaalvorm de laagste en de vijfde de hoogste (meest genormaliseerd) is. Deze normaalvormen zijnrichtlijnenvoor het juist ontwerpen van een relationele database.

Normaliseren heeft een aantal doelen.

  • Flexibiliteit. De genormaliseerde structuur van de database zorgt ervoor dat gegevens op veel verschillende manieren opgevraagd en bijgewerkt kunnen worden.
  • Integriteit. In een genormaliseerde database ben je gegevens zeer betrouwbaar opslaan.
  • In een genormaliseerde database worden gegevens maar op 1 plek opgeslagen. Als je data wil invoeren, aanpassen of verwijderen hoef je dat dus maar op 1 plek te doen.

Het normaliseren van een database schijnt voor veel mensen taaie materie te zijn. Ik heb zelf ook die ervaring gehad, hoewel dat eigenlijk onterecht is. Het normaliseren van een database komt eigenlijk neer op het nastreven van de volgende zaken en die zijn met een beetje oefening en puzzelen vaak redelijk gemakkelijk te realiseren.

  • Het verdelen van gegevens in logische samenhangende groepen.
  • Het minimaliseren van de hoeveelheid data die dubbel opgeslagen is, ofwel het voorkomen van 'redundancy'.
  • De gegevens zo organiseren dat het aanpassen of verwijderen van een gegeven altijd maar op één pek hoeft te gebeuren.
  • Gegevens zo organiseren dat ze snel en efficient op te vragen zijn.

De meeste applicaties gebruiken databases die zijn genormaliseerd tot de 1ste, de 2de of de 3de normaalvorm. De 4de en 5de normaalvorm zie je zelden. In deze cursus databases bespreek ik daarom alleen de eerste, tweede en derde normaalvorm.