1 van nul naar drie normaliseren. 2 inleiding in deze presentatie kijken we naar het normaliseren...
TRANSCRIPT
1
Van Nul naar DrieVan Nul naar Drie
Normaliseren
2
InleidingInleiding
In deze presentatie kijken we naar het
normaliseren van de nulde naar de
derde normaalvorm.
3
Een afleverbon:Een afleverbon:
4
Voor deze bon ontwerpen we Voor deze bon ontwerpen we een database:een database:
derde
eersteNulde
procesgegevens
sleutels
5
De nulde normaalvorm:De nulde normaalvorm:
Een overzicht van alle velden (gegevens) die in de database opgenomen worden.!!
Dat is:
6
De lijst met velden:De lijst met velden:ORDERS:OrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaatsArt.nr.Art.omschrijvingAantalPrijsRegeltotaalEindtotaal
7
De nulde normaalvorm is nu klaar..De nulde normaalvorm is nu klaar..
8
De eerste normaalvorm:De eerste normaalvorm:
Verwijder alle procesgegevensGeef de sleutel van de groep aanGeef de deelverzameling aan die
een herhaald aantal keren voorkomt t.o.v de primaire sleutel. (de repeterende groep)
9
Verwijder de Verwijder de procesgegevensprocesgegevens::
OrdersOrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaatsArt.nrArt.omschrijvingAantalPrijsX regeltotaal (procesgegeven)X eindtotaal (procesgegeven)
10
Geef een primaire sleutel:Geef een primaire sleutel:
OrdersOrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaatsArt.nrArt.omschrijvingAantalPrijsX regeltotaal (procesgegeven)X eindtotaal (procesgegeven
11
Geef de deelverzameling die een Geef de deelverzameling die een herhaald aantal keren voorkomtherhaald aantal keren voorkomt……OrdersOrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaatsRG Art.nrRG Art.omschrijvingRG AantalRG PrijsX regeltotaal (procesgegeven)X eindtotaal (procesgegeven
12
Maak een nieuwe groep voor Maak een nieuwe groep voor de herhalende gegevens:de herhalende gegevens:BESTELDE_ARTIKELENOrdernrArt.nrArt.omschrijvingAantalPrijs
13
Verwijder de herhalende Verwijder de herhalende deelverzameling uit de oorspronkelijke deelverzameling uit de oorspronkelijke groep..groep..ORDERSOrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaats
14
De eerste normaalvorm:De eerste normaalvorm:
ORDERSOrdernrOrderdatumKlantnrKlantnaamAdresPostcodePlaats
BESTELDE_ARTIKELENOrdernrArtnrArtomschrijvingAantalPrijs
15
De tweede normaalvorm…De tweede normaalvorm…Geef de attributen aan die niet functioneel
afhankelijk zijn van de volledige sleutel!!Maak een aparte groep voor ieder deel van
de sleutel waarvan de attributen afhankelijk zijn!!
Verwijder deze attributen uit de oorspronkelijke groep.!!
16
Geef de attributen aan die niet Geef de attributen aan die niet functioneel afhankelijk zijn van de functioneel afhankelijk zijn van de volledige sleutel!!volledige sleutel!!In de tabel BESTELDE_ARTIKELEN zijn
een paar attributen die niet afhankelijk zijn van de gehele sleutel!!
BESTELDE_ARTIKELENOrdernrArtnrArtomschrijvingAantalPrijs
17
De artomschrijving is is afhankelijk van het artnummer
De prijs is afhankelijk van het artnummer.
BESTELDE_ARTIKELENOrdernr>> Artnummer>> ArtomschrijvingAantal>> Prijs
18
Voor deze attributen maken we Voor deze attributen maken we een aparte groep. (we nemen de een aparte groep. (we nemen de sleutel mee)sleutel mee)
ARTIKELENArtnrArtomschrijvingPrijs
19
Verwijder de Verwijder de attributen attributen uit de uit de oorspronkelijke groep…oorspronkelijke groep…
BESTELDE_ARTIKELENOrdernrArtnrAantal
20
We hebben nu de We hebben nu de tweedetweede normaalvorm:normaalvorm:ORDERS ARTIKELENOrdernr artnrOrderdatum artomschrijvingKlantnummer prijsKlantnaamAdresPostcodePlaats
BESTELDE_ARTIKELENOrdernrArtnrAantal
21
De derde normaalvorm:De derde normaalvorm:
Geef de niet-sleutelattributen aan die functioneel afhankelijk zijn van andere niet-sleutelattributen!!
Maak een aparte groep voor ieder attribuut of combinatie ervan waar andere attributen functioneel van afhankelijk zijn.
Neem in iedere groep de attributen met bijbehorende sleutel op en wijs de primaire sleutel aan.
Verwijder de attributen uit de oorspronkelijke groep. (woordenlijst)
22
Geef de niet-sleutelattributen aan die Geef de niet-sleutelattributen aan die functioneel afhankelijk zijn van andere niet-functioneel afhankelijk zijn van andere niet-sleutelattributen!!sleutelattributen!!
In de tabel ORDERS zijn een aantal gegevens die niet afhankelijk zijn van het ordernr.
Dat zijn:
klantnr, adres, postcode en plaats.
Deze zijn afhankelijk van het klantnr.
23
Maak een aparte groep voor ieder Maak een aparte groep voor ieder attribuut of combinatie ervan waar attribuut of combinatie ervan waar andere attributen functioneel van andere attributen functioneel van afhankelijk zijnafhankelijk zijn
KLANTENKlantnaamAdresPostcodePlaats
24
KLANTENKlantnrKlantnaamAdresPostcodePlaats
Neem in iedere groep de attributen Neem in iedere groep de attributen met bijbehorende sleutel op en wijs de met bijbehorende sleutel op en wijs de primaire sleutel aan.primaire sleutel aan.
25
Verwijder de attributen uit de Verwijder de attributen uit de oorspronkelijke groep.oorspronkelijke groep.
ORDERSOrdernrKlantnrOrderdatum
26
De derde normaalvorm:De derde normaalvorm:
Orders BESTELDE_ARTIKELENOrdernr ordernr Klantnr artnrOrderdatum aantal
Klanten ARTIKELENKlantnr artnrKlantnaam artomschrijvingAdres prijsPostcodePlaats
27
WoordenlijstWoordenlijst...
28
Procesgegevens: wat zijn dat?Procesgegevens: wat zijn dat?
Gegevens die door middel van berekeningen kunnen worden afgeleid uit andere gegevens !!
Procesgegevens nemen we nooit op in een database.
Terug
29
Een Een niet-sleutelniet-sleutel attribuut attribuutEen veld in een tabel die geen primaire
sleutel is.
Voorbeeld:LeerlingnummerNaamAdresWoonplaats
Niet-sleutel attributen zijn hier naam, adres en woonplaats.(Terug)
30
Attribuut / attributen:Attribuut / attributen:
Attributen zijn de gegevens in een tabel.
Bijvoorbeeld: naam, adres en woomplaats. Dit zijn de velden die we in de tabel zullen tegenkomen.
In plaats van gegevens of velden spreken we vaak over attributen. (Terug)