SNF, Second Normal Form

Remove part key dependencies

Zijn er data-elementen die afhankelijk zijn van een deel van de FNF sleutel?

  1. Maak hiervoor een nieuwe tabel, boven de oude. Teken een verbindingslijn tussen de oude en nieuwe tabel, een many to one relatie.
  2. Merk de relatie aan de many kant met een rode hoofdletter I van Identificerend.
  3. De nieuwe tabel krijgt een kleinere sleutel. Maak nieuwe plakbriefjes voor de nieuwe key. Laat de key in de oude tabel hangen.
  4. Verhuis de afhankelijke data naar de nieuwe tabel.
  5. Herhaal deze stappen voor overige part-key dependencies.
Ontwerp in SNF, Second Normal Form

Koppeltabel

Noot: In de oude tabel blijft géén data over. Toch heeft de combinatie van keys betekenis. Zo'n koppeltabel maakt een many to many relatie mogelijk:
  • Één lezer kan meerdere abonnementen hebben op diverse kranten.
  • Op één krant zijn meerdere lezers geabonneerd.
Database-ontwerp met 2 one-to-many relaties Dit is nu al een redelijk database ontwerp, met drie tabellen en twee one-to many relaties. Met behulp van de keys kun je gerelateerde informatie in andere tabellen opzoeken.
  1. In abonnement staat het sofi#.
  2. Met het sofi# kun je in "Lezer" de juiste rij vinden.
  3. In de rij van Lezer staat o.a. het huisadres en huisnummer.