Normalformer – avleggs?

Slides:



Advertisements
Liknende presentasjoner
SERIE: Bønn som forvandler Ikke tenk for smått om bønn. luk
Advertisements

LIKEVERD Bevar ditt hjerte!.
Hva slags spørsmål skal man stille på hvilke nivåer?
Bli en bedre fisker ! Av Ulf Skauli
LC238D Datamodellering og databaser Else Lervik, september 2012 Forelesning 6, Uke 39 Objektorientering i ER-modeller.
En innføring i spillet: Lag En Setning
Novelle En novelle er en skjønnlitterær fortelling.
Forbruk Kompetansemålet er å kunne si noe om forbruksmønsteret i Norge og redegjøre for de rettighetene en forbruker har K-06.
Fra Ord til liv November 2009 “Det er lettere for en kamel å gå gjennom et nåløye enn for en rik å komme inn i Guds rike” (Mt 19,24).
Fremtidsbilder og familiens betydning Noen hovedfunn og perspektiver.
Hvordan intervjue en forsker?
PowerPoint laget av Bendik S. Søvegjarto Konsept, tekst og regler av Skage Hansen.
Kap 02 Relasjonsdatabaser
Fra ord til liv mai 2009 “Tjen hvernadre, hver og en med den nådegave han har fått, som gode forvaltere av Guds mangfoldige nåde.” (1. PT. 4,10)
MI – Motiverende intervju som hjelpemiddel ved livsstilsendring
Normalisering Formell teori for å forbedre relasjonsskjema design, unngå redundans. 2 hovedretninger : Syntese og Dekomposisjon Basert på funksjonelle.
Min Møtebok Navn: ____________________________________
Normalisering og andre modelleringsmetoder
Hva trenger jeg av data, og hvordan skal jeg innhente disse?
Leselos Ordforråd/metakognisjon
- roller og forventinger
Grunnleggende spørsmål om naturfag
Om smidig brukerkommunikasjon Smidig 2011 Johannes Brodwall Steria Norway.
Databaseteori.
Ideutvikling - Problemdefinisjonen. Hva gjør de erfarne problemløserne? •Samler og analyserer informasjon og data •Snakker med mennesker som kjenner problemet.
Forskningsdesign Bjørnar Sæther SGO 4001.
STASJONSUNDERVISNING
Databasehåndtering med MySQL
Normalisering Framstillingen avviker noe fra læreboka,
Siste forelesning ER/EER-modellering
TROSOPPLÆRINGSPLAN FOR RØNVIK MENIGHET
Kap 04 Datamodellering. Datamodellering -Et språk for å analysere og beskrive virkeligheten. -En metode for å beskrive naturlige sammenhenger i data som.
NKIs erfaring med Læringspartnere
Kapittel 47 Å gjøre lekser.
Kapittel 1, oppgave b) å kaste loss å seile uvær (n) kuling (m)
Kapittel 37 Hectors ønske om arbeid i Norge.
Kjell Arne Iversen, Thore Nilsen
Fra ord til liv April 2010.
12 Reflekterende lesing.

ER-modellen, notasjon ENTITETS- Attributter TYPE Relasjon
Eksempel på SQL ”SQL-setninger” har en struktur som likner på ”naturlig språk”, med ”verb, subjekter og adjektiver”. SQL-setningene begynner alltid med.
DATABASE: Oppgave 2 et medlemsregister for en idrettsklubb med flere idrettsgrener (fotball, håndball, osv). klubben ønsker å lagre informasjon om medlemmenes.
INF5270 7/2-05 Metadata Sten I. Solli og Hans S. Tømmerholt.
De 10 bud 10 måter å elske på.
Ser du feilen i denne setningen?
Undersøkelseslandskap
Livets tog.
Kvalitative og kvantitative metoder
Diskrete stokastiske variable
Jesu Kristi Gud Ef 1,17 Jeg ber om at vår Herre Jesu Kristi Gud, herlighetens Far, må la dere få den Ånd som gir visdom og åpenbaring, så dere lærer Gud.
Telefonmanus når du ringer fra din egen liste nr 1
1.1 /// Klikk her for å høre Magnus 1.2 /// Klikk her for å høre Thea 1.2.
Spørsmål og aktiviteter på ulike nivåer
Litterære virkemidler
Å kjøre bil og å stå i bilkø
Se ellers læreboka, kap , side
Fest og følelser Om seksualitet.
Hypotesetesting, og kontinuerlige stokastiske variable
Kapittel 6 Kveldsmat hos familien Dalilah.
Usikkerheter og sannsynligheter Petter Mostad
Kapittel 43 Emilio forteller om tradisjoner
Kapittel 11 Dåp og konfirmasjon i Den norske kirke
Han sier: Jeg kaller dere ikke lenger tjenere, men venner.
Kapittel 6 Kveldsmat hos familien Dalilah.
Felles tema i mars: Selvkontroll
INF1300 Introduksjon til databaser
God undervisning og dybdelæring i matematikk
12. Organisasjonsutvikling
12. Organisasjonsutvikling
Utskrift av presentasjonen:

Normalformer – avleggs? Jeg skal snakke om: Edgar Codd – hvem var han? Normalformene opp til 3NF Hva som er feil med dem Mine egne definisjoner Om pedagogikk Om modellering

Edgar Codd 1923 - 2003 Født i Dorset, England Studerte matte på Oxford Ansatt i IBM i 1948 Utvikla teorien om relasjonsdatabaser Offentliggjort i 1970, seinere bearbeida videre

Attributtene i en tabell skal være atomiske!! Normalformer Første normalform: Attributtene i en tabell skal være atomiske!! Hva mener du? Atomiske?? Det betyr at et attributt bare skal inneholde en verdi, kjære Watson!

Stikkord: Semantisk betydning! Brudd på 1NF Se på denne tabellen: Ikke atomiske: Person Pnr Navn Adresse Venner Fagområder Venner: Per, Pål, Espen Fagområder: Matematikk, informatikk Hva med disse da? Navn: Ari Ben Laden Adresse: Kirkeveien 2C, oppgang D Stikkord: Semantisk betydning!

For å forstå hva 2NF og 3NF er, må vi definere termen: Normalformer For å forstå hva 2NF og 3NF er, må vi definere termen: Funksjonell avhengighet Gitt fornavnet. Da er verdiene i de andre attributtene også gitt. Familiemedlem Fornavn Fødedato Kjønn Øyenfarge (Fornavn) -> (Fødedato, Kjønn, Øyenfarge) Vi ser at for eksempel fødedatoen er funksjonelt avhengig av fornavnet. Vi må forstå hva FA betyr for å finne riktig PN i en tabell!

Andre normalform: (Skapt for å handtere sammensatte nøkler!) Normalformer Andre normalform: (Skapt for å handtere sammensatte nøkler!) Tabellen skal være på 1NF og alle vanlige attributter i en tabell skal være funksjonelt avhengig av HELE primærnøkkelen!! Bilkjøp *Pnr *Bilnr Kjøpedato Fornavn Pris I denne tabellen er Fornavn bare funksjonelt avhengig av Pnr. (Pnr) -> (Fornavn)

(Pnr) -> (Postnr) -> (Stedsnavn) Normalformer Tredje normalform: Tabellen skal være på 2NF og ikke inneholde noen transitivt funksjonelle avhengigheter!! Person Pnr Fornavn Etternavn Adresse Postnr Stedsnavn Stedsnavnet er bestemt av Pnr via Postnr! (Pnr) -> (Postnr) -> (Stedsnavn) Det er hva vi kaller transitiv avhengighet.

Hva er galt med normalformene? De passer ikke inn med de utfordringene som vi gir våre elever! De er REGLERRRRRRRR, ikke definisjoner. De kan ikke forklare hvorfor repeterende felt er feil. Hva mener du? Repeterende felt?? Vær tålmodig, Watson! Vi tar et punkt av gangen!

Utfordringene som elevene møter Fra en lang tekst til en modell --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Bil  1 Person Elevene må velge ut riktige ord i en tekstoppgave Ordene må settes sammen til en datamodell Krever både evne til abstrahering og strukturering

Grunnleggende definisjoner Tre sentrale begreper, men da må vi definere disse for elevene! Gjør vi det induktivt eller deduktivt? Induktivt - fra det konkrete til det abstrakte - er mest gunstig… Men ikke når det gjelder definisjoner, Watson!

Fenomener kan du se, høre og/eller føle. Definisjon av tabell Katt En tabell er en symbolsk modell av et fenomen. Fenomener kan du se, høre og/eller føle. Konkrete fenomener: Person, mobil Abstrakte fenomener: Forestilling, besøk, skoletime

Definisjon av attributt Katt Navn Fødeår Kjønn Øyenfarge Et attributt er en egenskap som et fenomen HAR. Egenskapen er nært knytta til fenomenet. Vi bruker egenskaper som gjelder generelle for alle katter, ikke slike som er spesielle for en katt.

Strategi for å finne egenskaper Katt Navn Fødeår Kjønn Øyenfarge En katt har navn. En katt har fødeår. En katt har kjønn. Men hva med disse to? En katt har øyne. En katt har øyenfarge. Nært knytta til: egenskapen ikke kan sees uten fenomenet.

Skille fenomener og egenskaper Finn ord som er fenomener: Bok, personnr, reise, Edgar, fest, spørsmål Finn ord som er egenskaper: Tog, etternavn, aroma, kuhorn, sinne, følehår Knep: Finner vi egenskaper til ordet? Kan vi oppleve det?

Grunnleggende definisjoner Helhetlig kunnskap???? Alt må stykkes opp. Kunsten er hvordan! Derfor venter vi med å lære relasjoner. Elevene lager databaser med mange tabeller uten sammenheng. Noen elever aner at noe mangler. Motivasjon for å lære mer oppstår!

Definisjon av relasjon En relasjon er en rolle som to tabeller deler. eier Person Bil kjøper Andre roller: Stjeler, kjører, bli påkjørt av… Rollenavnet bestemmer kardinaliteten!

Eksempler på kardinalitet En til en: Et land har et nasjonalflagg. En til mange: Et land har mange byer. Mange til mange: Et person kan kjøpe mange biler. En bil kan bli kjøpt av mange personer. Metafor: Tabellen på den enslige sida kaller vi modertabell. Tabellen på mangesida kaller vi barnetabell.

Bruk av rollenavnet Bil Person Bilkjøp Person Bil kjøper Bil Bilnr  Person Pnr Rollenavnet danner basis for navnet på den nye tabellen: Bilkjøp *Pnr *Bilnr Kjøpedato Pris Person Pnr  1 Bil Bilnr Bruker metafor: Bilkjøp er et ”ektefødt barn”.

Sammensatt nøkkel eller ikke? Hva hvis vi erstatter den sammensatte nøkkelen med et ”autonummer”… Problem 1: Da tillater vi nullverdier i for eksempel Pnr Bilkjøp Bilkjøpnr *Pnr *Bilnr Kjøpedato Pris Vi kan løse det ved å si satte Obligatorisk: Ja Problem 2: Vi kan registrere verdier helt fritt! Tabellen har alternativ nøkkel, noe Access ikke støtter…

Et pust i bakken Vi har sett hva normalformer duger til Vi har definert tre basisbegreper La oss se på hvordan disse kan takle problemene med å normalisere:

Problemet med ikke atomisk Person Pnr Navn Adresse Venner Fagområder Venner er ikke een egenskap, men flere i en. Heller ikke er det egenskap til en person! Heller ikke fagområder. Men hva med adresse? En person har adresse. ”Har” er upresist. Vi kan også si: En person bor på adresse.

Problemet med 2NF og 3NF Et bilkjøp har ikke fornavn! *Pnr *Bilnr Kjøpedato Fornavn Pris Et bilkjøp har ikke fornavn! Fornavn er ingen egenskap til et bilkjøp. Person Pnr Fornavn Etternavn Adresse Postnr Stedsnavn En person har ikke stedsnavn! Stedsnavn er ingen egenskap til en person.

Hva er repeterende felt Endelig skal vi se på det, Watson! Merk telefon_nummerne. Anta at det plutselig dukker opp en ny form for telefon…. Hva nå? Person Pnr Tlf_hjemme Tlf_jobb Tlf_sommerhus Ring dataleverandøren! Han legger inn et nytt attributt til den nette sum av 10 00 kr… Hvordan forklarer C. J. Date at repeterende felt er feil? ”Det er bare sånn at databasen da ikke er normalisert!”

Hvordan unngå repeterende felt Telefon Tlf_hjemme Tlf_jobb Tlf_sommerhus Et telefon-nummer er egenskap… Men ikke til en person! Vi nærmer oss løsningen: En telefon kan ikke ha flere numre! Ergo: Telefon Tlf_nummer Type

Konklusjon Ved å definere ordene tabell, attributt og relasjon oppnår vi: Elevene lærer på en intuitiv måte, ikke instrumentuell. Elevene klarer å finne de rette ordene i en tekstoppgave. De klarer å skape løsninger på 3NF uten å bruke regelverket til Codd.

Lykke til på reisen hjem… Dere kan nå meg på: odd.bergstad@stovner.vgs.no