Eerst wat terminologie vooraf…. Abonnees: Uitgevers: Eerst wat terminologie vooraf…. OBJECTTYPE Dit groepje gegevens hoort op de een of andere manier bij elkaar…. We noemen het groepje ABONNEE… Een groepje gegevens dat bij elkaar hoort is een: objecttype
We gaan uit van een abonnee…
Deze groep labeltypen worden uniek met een abonneenummer We maken van de kaart een strook … Abonneenummer wordt gebruikt als primaire sleutel
We kijken verder bij de abonnee… De labeltypen links komen vaker voor. Dat zie je aan de vertakkingen. Probeer vast te stellen welke vertakkingen bij elkaar horen.
- Alle bovenste takken horen bij elkaar Alle middelste takken horen bij elkaar - Met iedere, zoveelste, tak wordt een groep herhaald - De verzameling labeltypen van de hoofdtakken wordt daarom een Repeating Group genoemd. Definitie: RG is een groepje labeltypen dat binnen een objecttype vaker kan voorkomen.
Het strokendiagram wordt nu uitgebreid… Wijs voor de Repeating Group ook een primaire sleutel aan…
Dit is de nulde normaalvorm
EERSTE STAP: afsplitsen van de ‘Repeating Groups' -------- ABONNEE De Repeating Group wordt uit de strook gehaald… ABONNEMENT De nieuwe strook krijgt een sleutel die is opgebouwd uit de twee oorspronkelij-ke sleutels … en de primaire sleutel van de eerste strook wordt gekopieerd. De gekopieerde sleutel wordt de vreemde sleutel…. … en het objecttype moet een naam krijgen…
Let op de vreemde sleutel die direct aangelegd wordt… Eerste normaalvorm TWEEDE STAP: afsplitsen van labeltypen die afhankelijk zijn van een gedeelte van de sleutel Kijk naar alle objecttypen die een samengestelde sleutel hebben. Dat is alleen bij ABONNEMENT het geval. Zijn er labeltypen afhankelijk van een deel van de rode sleutel? Uitgeverij en abonnementprijs zijn alléén van de titel afhankelijk. Let op de vreemde sleutel die direct aangelegd wordt… Ingangsdatum blijft achter bij de samengestelde sleutel
Tweede normaalvorm DERDE STAP: afsplitsen van labeltypen die afhankelijk zijn van een ander (niet-sleutel) labeltype Onderzoek in iedere strook of alle labeltypen die geen sleutel zijn, afhankelijk zijn van andere labeltypen die ook geen sleutel zijn. Bij ABONNEE is plaats afhankelijk van postcode. Ook adres is afhankelijk van postcode, maar moet dan wel gesplitst worden in: straat en huisnummer. Huisnummer is niet afhankelijk van postcode. TIJDSCHRIFT: niet aan de orde, want: uitgeverij heeft niets te maken met abonnementsprijs ABONNEMENT: niet aan de orde, want: er is maar één labeltype niet-sleutel
Dus: adres is afhankelijk van postcode. adres moet gesplitst worden in: straat en huisnummer. Nu moeten de van postcode afhankelijke labeltypen afgesplitst worden Denk aan de primaire sleutel van postcode en denk aan de vreemde sleutel!
Resultaat