De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

ANALYSE 3 INFANL01-3 WEEK 2 CMI Informatica. Roosterprobleem 4 11:20 12:10 INFANL01-3 WD.04.002 - INF1A, INF1B (Analyse 3) 5 12:10 13:00 12:30 13:00 Lunch.

Verwante presentaties


Presentatie over: "ANALYSE 3 INFANL01-3 WEEK 2 CMI Informatica. Roosterprobleem 4 11:20 12:10 INFANL01-3 WD.04.002 - INF1A, INF1B (Analyse 3) 5 12:10 13:00 12:30 13:00 Lunch."— Transcript van de presentatie:

1 ANALYSE 3 INFANL01-3 WEEK 2 CMI Informatica

2 Roosterprobleem 4 11:20 12:10 INFANL01-3 WD INF1A, INF1B (Analyse 3) 5 12:10 13:00 12:30 13:00 Lunch lezing H :00 13:50

3 ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Primaire sleutel, uniek en verwijssleutel ▸ Normaliseren

4 VORIGE LES

5 Tabellen rij (record, tuple, occurence) kolom (attribuut, veld) tabel (relatie) tabelstructuur : patient(PAT#,PNAAM,LEEFTIJD,GESLACHT,ARTS) domein (‘M’,’V’) waarde=’V ’

6 Entiteit Relatie Diagram Elementen  Entiteiten  Attributen  Sleutels (Identifiers)  Relaties

7 Het relationele model

8 Vorige les

9  Sleutels (Identifiers) zijn speciale attributen in een tabel:  attribuut of attributen die een entiteit identificeren  uniek of niet uniek  samengesteld Entiteit Relatie Diagram – Sleutels

10 Sleutels Een sleutel is een groep van één of meerdere attributen waardoor een rij uniek wordt geïdentificeerd

11 Soorten sleutels Primaire sleutel (primary key) Simpel Samengesteld (composite) Zelfbedacht (artificial of surrogate) Verwijssleutel (foreign key) Verwijst een rij of meerdere rijen van een tabel naar een rij of meerdere rijen van een andere tabel (zie relaties slide)

12 één op één ( 1 : 1) één op veel ( 1 : N) veel op veel ( N : M) Relaties (1) - typen binaire relaties Wat zijn mogelijke sleutels voor de boven staande entiteiten? Primary key (simple en composite), unique key en foreign key

13 Entiteiten waarvan het bestaan afhankelijk is van een andere entiteit (lifetime dependency) Relaties(5) - zwakke entiteiten

14 relaties tussen entiteiten uit dezelfde entiteitsklasse Relaties(4) - recursiviteit

15 Oefening Identificeer het type sleutel voor elk entiteit in het volgend diagram (Barker notatie) a. Primaire sleutel (simple) b. Samengestelde sleutel (composite) c. Samengestelde sleutel van een relatie en een attribuut (composite)

16 NORMALISEREN

17 Functionele afhankelijkheid(1)  Functionele afhankelijkheid = verband tussen attributen  Attribuut Y is functioneel afhankelijk van attribuut X als de waarde van X de waarde van Y bepaalt.  De waarde wordt verkregen door “opzoeken” in de database.  Notatie:  Studentnummer  afstudeervak  Computernummer  geheugenomvang  Determinant  Samengestelde determinant Voorbeeld:  CIJFERS(Studentnummer,Vak,Cijfer)  (Studentnummer,Vak)  Cijfer

18 Modificatie anomalieën  Verwijder anomalie  Invoeg anomalie

19 Kern van normalisatie Databasenormalisatie is een techniek bij het ontwerpen van databases. Ze dient twee doelen: het spaarzaam omgaan met opslagruimte en het vermijden van meervoudige vastlegging van dezelfde data, een potentiele bron van fouten.

20 Normaalvormen We gaan tot de derde normaalvorm in de praktijk toepassen

21 Eerste normaalvorm Een tabel die voldoet aan de voorwaarden voor een relatie, is in de eerste normaalvorm. elk attribuut is atomair, en bevat dus één enkele waarde geen enkel attribuut wordt herhaald alle attributen blijven constant in de tijd bijvoorbeeld een adres-attribuut mag geen twee adressen bevatten

22 Tweede normaalvorm Een relatie is in de tweede normaalvorm als alle attributen die niet in de sleutel zijn opgenomen, afhankelijk zijn van de gehele sleutel.

23 Derde normaalvorm Een relatie is in de derde normaalvorm als het in de tweede normaalvorm is en geen transitieve afhankelijkheden kent. Transitieve afhankelijkheid

24 3e normaalvorm (3NF)

25 Database ontwerp : Hoe doe je het? Ontwerpmethoden: E/R (entity-relationship) semantisch object model Controle:  normaliseren

26 Database ontwerp voorbeeld: administratie van uitgeleende boeken (1) Voor wie?  de eigenaar van de boeken Functie :  het geven van een actueel overzicht van alle uitgeleende boeken; bovendien per boek:  aan wie (het boek is uitgeleend)  sinds wanneer (het boek is uitgeleend)

27 Database ontwerp voorbeeld: administratie van uitgeleende boeken (2) Bedenk eerst …. hoe je het zonder geautomatiseerd systeem zou doen! ?

28 Database ontwerp voorbeeld: administratie van uitgeleende boeken (3) Bedenk eerst hoe je het zonder geautomatiseerd systeem zou doen! schrift met 1 regel per uitgeleend boek (auteur, titel, lener_naam, lener_telnr, sinds) spreadsheet vgl. database met 1 tabel:‘uitgeleende boeken’

29 Database ontwerp voorbeeld: administratie van uitgeleende boeken (4) Problemen: wijzigen van telnr op meerdere plaatsen bij terugbrengen boek ook telnr weg Hoe komt dit ?  afhankelijkheid : lener_naam -> lener_telnr  lener_naam is een determinant van lener_telnr

30 Database ontwerp voorbeeld: administratie van uitgeleende boeken (5) Oplossing: 2 tabellen  schrift met uitgeleende boeken  adresboekje (of GSM telefoon): naam + telnr

31 Normaliseren - recap

32 Normalisatie: 1NF (first normal form)  Definitie 1NF: Een tabel is in 1NF als voor elke waarde van die tabel elke rij precies 1 waarde voor elke attribuut heeft voorbeeld: in de tabel leners heeft elke rij 1 naam en 1 telnr

33 Normalisatie: 2NF  Definitie 2NF: (aanname: er is slechts 1 kandidaat sleutel die de primaire sleutel is) Een tabel is in 2NF als deze in 1NF is, en elk niet-sleutel attribuut (op de een of andere manier) afhankelijk is van de primaire sleutel

34 Normalisatie: 2NF PK

35 Normalisatie: 2NF PK

36 Normalisatie: 3NF  Definitie 3NF: (aanname: er is slechts 1 kandidaat sleutel die de primaire sleutel is) Een tabel is in 3NF als deze in 2NF is, en elk niet-sleutel attribuut niet-transitief afhankelijk is van de primaire sleutel

37 Normalisatie: 3NF PK 2NF3NF

38


Download ppt "ANALYSE 3 INFANL01-3 WEEK 2 CMI Informatica. Roosterprobleem 4 11:20 12:10 INFANL01-3 WD.04.002 - INF1A, INF1B (Analyse 3) 5 12:10 13:00 12:30 13:00 Lunch."

Verwante presentaties


Ads door Google