Relasjonsdatabasedesign

Størrelse: px
Begynne med side:

Download "Relasjonsdatabasedesign"

Transkript

1 Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF Ragnar Normann

2 Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet (samlokalisering i skjema) gjenspeiler logisk nærhet Brudd på dette har en tendens til å påtvinge dobbeltlagring av data og dermed forårsake oppdateringsanomalier Så lite dobbeltlagring som mulig: Plassbehovet minimaliseres Oppdatering forenkles Så få glisne relasjoner som mulig: Plassbehovet minimaliseres Unngår problemer med håndtering av nil-verdier Korrekt totalinformasjon kan gjenskapes nøyaktig Ingen falske data genereres INF Ragnar Normann 2

3 Eksempel: Grossistdatabase versjon Produkt(Kode, Produktnavn, Produsent, #Enheter) Kunde(Kode, Kundenr, Navn, Adresse, #Bestilt) Skranker:. Alle verdier i Kode i Produkt-skjemaet skal være unike 2. For hvert par av Kundenr, Kode i Kunde-skjemaet skal det være bare en mulig verdi av #Bestilt 3. Verdien i Kundenr bestemmer verdiene i Navn og Adresse 4. Kode i Kunde-skjemaet henspeiler på verdier i Kode i Produkt-skjemaet INF Ragnar Normann 3

4 Grossistdatabase versjon med integritetsregler Produkt(Kode, Produktnavn, Produsent, #Enheter) Kunde(Kode, Kundenr, Navn, Adresse, #Bestilt) Integritetsregler:. KodeÆProduktnavn Produsent #Enheter 2. Kundenr KodeÆ#Bestilt 3. KundenrÆNavn Adresse 4. Kode i Kunde-skjemaet er fremmednøkkel til Produkt Merk at {Kode} er en kandidatnøkkel i Produkt Den er den eneste slike i Produkt og blir derfor primærnøkkel Merk at 2 og 3 gir at {Kode, Kundenr} er supernøkkel i Kunde Dette er dessuten en kandidatnøkkel og den eneste slike i Kunde Den blir derfor primærnøkkel INF Ragnar Normann 4

5 Eksempelekstensjon Kunde Kunde Kode Kundenr Navn Adresse #Bestilt 2 2 A A B a a b INF Ragnar Normann 5

6 Oppdateringsanomalier Innsettingsanomalier Opprettholde konsistente verdier Hvordan håndtere sekundær informasjon? Tillate nil i primærnøkkel? Slettingsanomalier Risikerer å miste sekundær informasjon Modifiseringsanomalier Opprettholde konsistente verdier Oppdatering av sekundær informasjon INF Ragnar Normann 6

7 Hvordan unngå oppdateringsanomalier Unngå/fjern oppdateringsanomalier og dobbeltlagring ved å splitte (dekomponere) relasjonene slik at dobbeltlagring blir borte! INF Ragnar Normann 7

8 Dekomposisjon av et relasjonsskjema Gitt et relasjonsskjema R(A,A2,,An). En dekomposisjon D = {R,R2,,Rm} av R er en samling med skjemaer R,R2,,Rm som er slik at følgende to krav holder: alle attributtene i hver R k er også attributt i R samtlige attributter A,A2,,An kan gjenfinnes i minst ett av skjemaene R,R2,,Rm INF Ragnar Normann 8

9 Eksempel: Grossistdatabase versjon 2 Produkt(Kode, Produktnavn, Produsent) Kundereg(Kundenr, Navn, Adresse) Bestilling(Kode, Kundenr, #Bestilt) Integritetsregler: Kode i Bestilling er fremmednøkkel til Produkt Kundenr i Bestilling er fremmednøkkel til Kundereg INF Ragnar Normann 9

10 Eksempelekstensjoner Kundereg, Bestilling Kundereg Kundenr Navn Adresse Bestilling Kode Kundenr #Bestilt 2 A B a b INF Ragnar Normann 0

11 Naturlig join Vi ønsker å kunne rekonstruere den opprinnelige ekstensjonen Naturlig join er en operasjon der to relasjoner slås sammen til ett ved at to og to tupler parres hvis og bare hvis de har like verdier i attributter med likt navn INF Ragnar Normann

12 Kundereg Kundereg Kundenr Navn Adresse Bestilling Bestilling Kode Kundenr #Bestilt 2 A B a b Kundereg Bestilling Kundenr Navn Adresse Kode #Bestilt 2 A A B a a b INF Ragnar Normann 2

13 Eksempel: Grossistdatabase, versjon 3 Produkt(Kode, Produktnavn, Produsent) Kundereg(Kundenr, Navn, Adresse) Kodereg(Kode, Kundenr) Antall(Kundenr, #Bestilt) Integritetsregler: Kode i Kodereg er fremmednøkkel til Produkt Kundenr i Kodereg er fremmednøkkel til Kundereg Kundenr i Antall er fremmednøkkel til Kundereg INF Ragnar Normann 3

14 Eksempelekstensjoner Kundereg, Bestilling Kodereg Antall Kodereg Antall Kode Kundenr Kundenr #Bestilt Kode Kundenr #Bestilt Naturlig join på de to tabellene gir flere tupler enn i den opprinnelige tabellen! = Falske tupler INF Ragnar Normann 4

15 Retningslinjer for dekomposisjon av relasjoner? Motivasjon: Fjerne oppdateringsanomalier Teknikk: Dekomponere problemrelasjoner Betingelse: Opprinnelig ekstensjon skal alltid kunne rekonstrueres nøyaktig ved naturlig join Problem: Hvordan vurdere objektivt om en samling relasjoner er god/dårlig? Hvordan sikre at en dekomposisjon aldri gir falske tupler? INF Ragnar Normann 5

16 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon Jo høyere normalform, jo færre oppdateringsanomalier Det fins algoritmer for å omforme fra lavere til høyere normalformer Det fins algoritmer for å sjekke om en dekomposisjon er tapsfri, dvs. at naturlig join aldri vil gi falske tupler INF Ragnar Normann 6

17 Utgangspunkt for normalformene NF-BCNF Alle integritetsregler er i form av FDer (og fremmednøkler) INF Ragnar Normann 7

18 Normalformer, oversikt NF 2NF 3NF EKNF BCNF INF Ragnar Normann 8

19 Første normalform Definisjon NF (Codd 972): Alle domener består av atomære verdier Funksjonsverdien til et tuppel for et gitt attributt skal være en slik atomær verdi (eller nil) Alle relasjoner er automatisk på NF INF Ragnar Normann 9

20 Andre normalform Definisjon ikketriviell FD XÆY: Y inneholder minst ett attributt utenfor X. Dvs.Y-X Definisjon 2NF (Codd 972): En relasjon R er på andre normalform hvis alle ikketrivielle FDer i R på formen XÆA der X er en mengde attributter og A er ett attributt i R, tilfredsstiller minst ett av følgende: i. X er en supernøkkel i R ii. iii. A er et nøkkelattributt i R XÀK for noen kandidatnøkkel K i R INF Ragnar Normann 20

21 Egenskaper 2NF 2NFÕNF siden alle relasjoner er NF Når er en relasjon NF, men ikke 2NF? Svar: Når det fins en ikketriviell FD XÆA og en kandidatnøkkel K hvor XÃK, X K og A ikke er et nøkkelattributt Eks: R(A,B,C,D), F={BCÆD, CÆA} Dekomposisjon: R (A,C), R 2 (B,C,D) 2NF er mest av historisk interesse; vi gjør sjelden feil som bryter 2NF INF Ragnar Normann 2

22 Tredje normalform Definisjon 3NF (Codd 972): En relasjon R er på tredje normalform hvis alle ikketrivielle FDer i R på formen XÆA tilfredsstiller minst ett av følgende: i. X er en supernøkkel i R ii. A er et nøkkelattributt i R INF Ragnar Normann 22

23 Egenskaper 3NF 3NFÕ2NF fordi kravene til 3NF er en skjerping av kravene til 2NF Når er en relasjon 2NF, men ikke 3NF? Svar: Når det fins en ikketriviell FD XÆA hvor X ikke er en supernøkkel og A ikke er et nøkkelattributt og XÀK for noen kandidatnøkkel K Eks: R(A,B,C), F={AÆBC, BÆC} Dekomposisjon: R (A,B), R 2 (B,C) Også 3NF er lett å oppnå. INF Ragnar Normann 23

24 Elementære FDer og nøkler En FD XÆA kalles elementær dersom A er et atributt XÆA ikke er triviell X er minimal (dvs. at hvis YÕX og YÆA, så er Y=X) En (kandidat)nøkkel K kalles elementær hvis det finnes en elementær FD KÆB i R INF Ragnar Normann 24

25 Elementary Key Normal Form EKNF (Zaniolo 982) er ikke pensum, men er tatt med for fullstendighets skyld: En relasjon R er på EKNF hvis alle ikketrivielle FDer i R på formen XÆA tilfredsstiller minst ett av følgende: i. X er en supernøkkel i R ii. A er et attributt i en elementær nøkkel i R INF Ragnar Normann 25

26 Egenskaper EKNF EKNFÕ3NF fordi kravene til EKNF er en skjerping av kravene til 3NF Når er en relasjon 3NF, men ikke EKNF? Svar: Når det fins en ikketriviell FD XÆA hvor X ikke er en supernøkkel og A er et nøkkelattributt i en ikke-elementær nøkkel Eks: R(A,B,C), F={ABÆC,BÆCA,CÆA,AÆC} (Her kan A=epostadresse, B=emnekode og C=fødselsnummer på studenter) Mulig dekomposisjon: R (A,B), R 2 (A,C) INF Ragnar Normann 26

27 Boyce-Codd Normal Form Definisjon BCNF (Boyce & Codd 974): En relasjon R er på Boyce-Codd normalform hvis alle ikketrivielle FDer i R på formen XÆA tilfredsstiller følgende: i. X er en supernøkkel i R INF Ragnar Normann 27

28 Egenskaper BCNF BCNFÕEKNF fordi kravene til BCNF er en skjerping av kravene til EKNF Når er en relasjon EKNF, men ikke BCNF? Svar: Når det fins en ikketriviell FD XÆA hvor X ikke er en supernøkkel og A er et attributt i en elementær nøkkel Eks: R(A,B,C), F={ABÆC, CÆA} Dekomposisjon: R (B,C), R 2 (A,C) Merk at FDen ABÆC går på tvers av R og R 2 INF Ragnar Normann 28

29 Oppsummering normalisering Brudd på normalformer gir opphav til dobbeltlagring Jo høyere normalform, desto mindre dobbeltlagring BCNF: Alle FDer er i form av kandidatnøkler. Dvs. ingen dobbeltlagring innen skjemaet. Men: Noen FDer kan gå på tvers av skjemaer EKNF: Ingen FDer går på tvers av skjemaer, men det kan være noen FDer innen skjemaer som gir opphav til dobbeltlagring Krav til dekomposisjon: Den må være tapsfri, dvs. aldri kunne gi opphav til falske tupler Det er en fordel om dekomposisjonen også er FDbevarende, dvs. at ingen FDer går på tvers av skjemaer INF Ragnar Normann 29

30 Hvorfor BCNF ikke alltid er gunstig Dersom vi har en dekomposisjon som ikke er FD-bevarende, må vi foreta join mellom skjemaene i forbindelse med oppdateringer for å sjekke at integritetsreglene overholdes. Vi har valget mellom Enten: Gå tilbake til 3NF (EKNF) og bryte BCNF, da får vi dobbeltlagring og må ta hensyn til dette under oppdatering Eller: Beholde BCNF og foreta join mellom relasjoner for å sjekke at FDer overholdes ved oppdateringer INF Ragnar Normann 30

31 Det fins algoritmer som Tester om en dekomposisjon er tapsfri Tester om en dekomposisjon er FDbevarende Dekomponerer skjemaer tapsfritt og FDbevarende Garantert EKNF, men gir ikke alltid BCNF Dekomponerer skjemaer tapsfritt til BCNF Ikke alltid FD-bevarende INF Ragnar Normann 3

32 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter gir opphav til en større klasse integritetsregler enn de som kan uttrykkes ved FDer INF Ragnar Normann 32

33 Eksempel: Emnedatabase Emne(Kode, Lærebok, Foreleser) Skranker: Et emne har et sett av lærebøker som er uavhengig av hvem som foreleser emnet Et emne kan ha flere forelesere, og det er ingen sammenheng mellom forelesere og lærebøker INF Ragnar Normann 33

34 Eksempelekstensjon Emne Kode Lærebok Foreleser Emne Kode Lærebok Foreleser INF00 INF00 INF050 INF050 INF050 Liang OOhefte Kjernen PHP Web Margunn Ingvild Erik Tone Gerhard INF00 INF00 INF00 INF00 INF050 INF050 INF050 INF050 INF050 INF050 INF050 INF050 INF050 Liang Liang OOhefte OOhefte Kjernen Kjernen Kjernen PHP PHP PHP Web Web Web Margunn Ingvild Margunn Ingvild Erik Tone Gerhard Erik Tone Gerhard Erik Tone Gerhard INF Ragnar Normann 34

35 Definisjon flerverdiavhengighet Gitt et relasjonsskjema R(A,A 2,,A n ). La X, Y være delmengder av {A,A 2,,A n }. La Z være de attributtene som hverken er med i X eller Y. Y er flerverdiavhengig av X hvis vi for enhver lovlig instans av R har at hvis instansen inneholder to tupler t og t 2 hvor t [X]=t 2 [X], så fins det også to tupler u og u 2 hvor. u [X]=u 2 [X]=t [X]=t 2 [X] 2. u [Y]=t [Y], u 2 [Y]=t 2 [Y] 3. u [Z]=t 2 [Z], u 2 [Z]=t [Z] INF Ragnar Normann 35

36 Definisjon på norsk Y er flerverdiavhengig av X hvis vi for alle lovlige instanser av R har at hvis instansen inneholder to tupler t og t 2 som er like på X, så må den også inneholde to tupler u og u 2 hvor. u er lik t på Y og lik t 2 utenfor Y 2. u 2 er lik t 2 på Y og lik t utenfor Y INF Ragnar Normann 36

37 ÆÆ MVD Vi skriver X Y hvis Y er flerverdiavhengig av X. Ofte snakker vi for korthets skyld om MVDen X ÆÆ Y der MVD står for Multi-Valued Dependency. Hvis YÕX, så X ÆÆ Y. Hvis XY er samtlige attributter i R, så X ÆÆ Y. Hvis XÆY, så X ÆÆ Y. Definisjon triviell MVD: X ÆÆ Y hvor YÕX eller XY er samtlige attributter i R. Definisjon ekte MVD: En ikketriviell X ÆÆ Y hvor XÆY ikke holder. MVDer benyttes til å uttrykke integritetsregler: Kode ÆÆ Lærebok, Kode ÆÆ Foreleser MVDer opptrer hvis man plasserer to m:n-forhold (m ) i samme relasjon og de to forholdene ikke har avhengigheter seg imellom INF Ragnar Normann 37

38 Armstrongs slutningsregler utvidet til MVDer (for spesielt interesserte). Refleksivitet FD: Hvis YÕX, så XÆY 2. Utvidelse FD: Hvis XÆY, så XZÆYZ 3. Transitivitet FD: Hvis XÆY og YÆZ, så XÆZ. 4. Komplement: Hvis Z er de attributtene som XY ikke omfatter, og X ÆÆ Y, så X ÆÆ Z. 5. Utvidelse MVD: Hvis X ÆÆ Y og ZÕW, så XW ÆÆ YZ 6. Transitivitet MVD: Hvis X ÆÆ Y og Y ÆÆ Z, så X ÆÆ Z-Y 7. FDer er MVDer: Hvis XÆY så X ÆÆ Y 8. Sammensmeltning: Hvis X ÆÆ Y, WÆZ, W«Y= og ZÕY, så XÆZ Regelsettet er sunt og komplett for MVDer og FDer INF Ragnar Normann 38

39 Høyere normalformer, oversikt NF BCNF 4NF 5NF PJNF og DKNF INF Ragnar Normann 39

40 Utgangspunkt for normalformen 4NF Alle integritetsregler er i form av FDer og MVDer (og fremmednøkler) INF Ragnar Normann 40

41 Fjerde normalform Definisjon 4NF (Fagin 977): En relasjon R er på fjerde normalform hvis alle ikketrivielle MVDer X ÆÆ Y tilfredsstiller følgende: i. X er en supernøkkel i R INF Ragnar Normann 4

42 Egenskaper 4NF 4NFÕBCNF: Anta at R er 4NF. Vis at for enhver ikketriviell FD XÆY i R er X en supernøkkel Når er en relasjon BCNF, men ikke 4NF? Svar: Når alle ikketrivielle FDer XÆY er slik at X er en supernøkkel og det fins en ekte MVD Z ÆÆ W der Z ikke er en supernøkkel. INF Ragnar Normann 42

43 Normalformer utover 4NF (Kursorisk pensum) 5NF (Maier 983) PJNF: Project-Join Normal Form (Fagin 979) DKNF: Domain Key Normal Form (Fagin 98) INF Ragnar Normann 43

44 Joinavhengigheter La R være en relasjon og la D={R,,R m } være en dekomposisjon av R. Dersom D er tapsfri, sier vi at D tilfredsstiller en JD (Join Dependency) En JD kalles triviell dersom RŒD Teorem (Fagin 977): Hvis m=2, dvs D={R,R 2 }, tilfredsstiller D en JD hvis, og bare hvis, vi har en MVD X ÆÆ Y der X=R «R 2 og Y=R 2 R Dette betyr at en MVD er det samme som en JD for en dekomposisjon med 2 komponenter INF Ragnar Normann 44

45 Ekte dekomposisjoner og 5NF En dekomposisjon D={R,,R m } kalles ekte hvis det ikke finnes i og j med i j og R i ÕR j (en slik R i vil alltid være overflødig fordi den ikke kan bidra til å gjøre D tapsfri) En relasjon R er på 5NF hvis alle ekte tapsfri dekomposisjoner av R bare består av supernøkler Hvis vi fortsetter å tapsfritt dekomponere en relasjon på 5NF, så vil ikke dekomposisjonen bety noen reduksjon i antall tupler eller verdier som må lagres, tvert imot vil lagerbehovet øke INF Ragnar Normann 45

46 PJNF (Project/Join Normal Form) En relasjon R er på PJNF hvis alle JD-er i R er en konsekvens av kandidatnøklene Mer presist: R er på PJNF hvis alle ekte tapsfri dekomposisjoner D er nøkkelsammenhengende i henhold til følgende algoritme: Så lenge det finnes to komponenter i D hvis snitt er en supernøkkel, så bytt ut de to komponentene med deres union Hvis prosessen terminerer med D={R}, er D nøkkelsammenhengende, ellers ikke INF Ragnar Normann 46

47 DKNF (Domain-Key Normal Form) En relasjon R er på DKNF hvis de eneste integritetsreglene i R er nøkkelrestriksjoner og domenerestriksjoner DKNF er lett å håndheve, men det er for mange integritetsregler som ikke kan uttrykkes på denne måten til at vi kan begrense oss til å ha komponenter på DKNF INF Ragnar Normann 47

48 Oppsummering av høye normalformer En relasjon R er på 4NF hvis, og bare hvis, alle ekte tapsfri dekomposisjoner med to komponenter består av to supernøkler (Dette bevises ved å vise at en join av to supernøkler er tapsfri hvis, og bare hvis, deres snitt er en supernøkkel) 5NF er (ekte) inneholdt i 4NF Både PJNF og DKNF er (ekte) inneholdt i 5NF Det finnes relasjoner som er i PJNF, men ikke i DKNF, og omvendt Personlig mening: 5NF og PJNF burde bytte navn (det burde 3NF og BCNF også, men vi kan ikke forandre historien) INF Ragnar Normann 48

Hva kjennetegner god relasjonsdatabasedesign? Eksempel: Grossistdatabase versjon 1

Hva kjennetegner god relasjonsdatabasedesign? Eksempel: Grossistdatabase versjon 1 Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet (samlokalisering i skjema) gjenspeiler logisk nærhet Brudd på dette har en tendens til å påtvinge dobbeltlagring

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-4..005 - Ragnar Normann Hva kjennetegner god relasjonsdatabasedesign? Skjemaene samler beslektet informasjon: Tekstlig nærhet

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer INF300-8..008 Ragnar Normann Institutt for Informatikk Hva kjennetegner god relasjonsdatabasedesign? Beslektet

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Oppdateringsanomalier Dekomponering Normalformer Institutt for Informatikk INF300-9..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Beslektet

Detaljer

Relasjonsdatabasedesign (forts.)

Relasjonsdatabasedesign (forts.) Relasjonsdatabasedesign (forts.) Flerverdiavhengigheter Høyere normalformer INF3100-25.1.2005 - Ragnar Normann 1 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter gir opphav til en større

Detaljer

Relasjonsdatabasedesign (forts.)

Relasjonsdatabasedesign (forts.) UNIVERSITETET I OSLO Relasjonsdatabasedesign (forts.) Flerverdiavhengigheter Høyere normalformer INF3100-29.1.2008 Ragnar Normann Institutt for Informatikk 1 Flerverdiavhengigheter Generalisering av FDer

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET IOSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-1.2.2011 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Generalisering av FDer Flerverdiavhengigheter

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF300-6..00 Ellen Munthe-Kaas Definisjon av nøkler Gitt et relasjonsskjema

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET IOSLO Relasjonsdatabasedesign Tapsfri dekomposisjon Normalformer INF3100-26.1.2009 Ragnhild Kobro Runde 1 Repetisjon: funksjonell avhengighet Gitt et relasjonsskjema R(A1,A2,,An) og la X,

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-1.2.2010 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer INF300 7.0.008 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler

Detaljer

UNIVERSITETET. Relasjonsdatabasedesign

UNIVERSITETET. Relasjonsdatabasedesign UNIVERSITETET IOSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-31.1.2011 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt et relasjonsskjema R(XYZ) med FDer

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer INF300..007 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler beslektet

Detaljer

Dagens tema: Oppdateringsanomalier Normalformer

Dagens tema: Oppdateringsanomalier Normalformer UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 08..0 michael@ifi.uio.no Hva kjennetegner god relasjonsdatabasedesign?

Detaljer

Oppdateringsanomalier Normalformer

Oppdateringsanomalier Normalformer UNIVERSITETET I OSLO INF300 Introduksjon til databaser Dagens tema: Oppdateringsanomalier Normalformer Institutt for informatikk INF300 26.0.2009 Ellen Munthe-Kaas Hva kjennetegner god relasjonsdatabasedesign?

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-22.1.2013 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt en relasjon R(XYZ) med FDer F.

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF3100-17.1.2014 Ellen Munthe-Kaas 1 Definisjon av nøkler Gitt en

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-26.1.2012 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter gir

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-24.1.2014 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter brukes

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Funksjonelle avhengigheter Oppdateringsanomalier Dekomponering Institutt for Informatikk INF3100-20.1.2016 Ellen Munthe-Kaas 1 Definisjon av nøkler Gitt en

Detaljer

Oppdateringsanomalier. Normalformer. Institutt for informatikk INF

Oppdateringsanomalier. Normalformer. Institutt for informatikk INF Oppdateringsanomalier Normalformer Institutt for informatikk INF300 7.0.04 Relasjonene samler beslektet informasjon Så lite dobbeltlagring som mulig Så få glisne relasjoner som mulig Korrekt totalinformasjon

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-27.1.2015 Ellen Munthe-Kaas 1 Flerverdiavhengigheter Flerverdiavhengigheter brukes

Detaljer

Relasjonsdatabasedesign. Ekstramateriale: Normalformer utover 4NF (ikke pensum)

Relasjonsdatabasedesign. Ekstramateriale: Normalformer utover 4NF (ikke pensum) UNIVERSITETET I OSLO Relasjonsdatabasedesign Ekstramateriale: Normalformer utover 4NF (ikke pensum) Institutt for Informatikk INF3100-26.1.2012 Ellen Munthe-Kaas 1 Høyere normalformer, oversikt 1NF BCNF

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Flerverdiavhengigheter Høyere normalformer Institutt for Informatikk INF3100-1.2.2016 Ellen Munthe-Kaas 1 Flerverdiavhengigheter FDer uttrykker "en Y for hver

Detaljer

Normalformer utover 4NF (ikke pensum)

Normalformer utover 4NF (ikke pensum) UNIVERSITETET I OSLO Normalformer utover 4NF (ikke pensum) Institutt for Informatikk INF3100 - Ellen Munthe-Kaas 1 Høyere normalformer, oversikt 1NF BCNF 4NF ETNF RFNF = KCNF SKNF 5NF INF3100 - Ellen Munthe-Kaas

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-26.1.2015 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon

Detaljer

Relasjonsdatabaseteori

Relasjonsdatabaseteori Relasjonsdatabaseteori Nøkler, funksjonelle avhengigheter og normalformer Arash Khorram arashk@ifi.uio.no Lana Vu anhlv@ifi.uio.no Hva kjennetegner god relasjonsdatabasedesign? Relasjonene samler beslektet

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-20.1.2014 Ellen Munthe-Kaas 1 Hvordan dekomponere tapsfritt Fagins teorem Gitt en relasjon R(XYZ) med FDer F.

Detaljer

Relasjonsdatabasedesign

Relasjonsdatabasedesign UNIVERSITETET I OSLO Relasjonsdatabasedesign Normalformer Institutt for Informatikk INF3100-25.1.2016 Ellen Munthe-Kaas 1 Normalformer Normalformer er et uttrykk for hvor godt vi har lykkes i en dekomposisjon

Detaljer

God Databasedesign: På vei mot Normalformer

God Databasedesign: På vei mot Normalformer God Databasedesign: På vei mot Normalformer Martin Giese 4. november 08 Agenda Hva er god databasedesign? Forklart ved et dårlig eksempel Oppdateringsanomalier Repetisjon: Supernøkler, kandidatnøkler,

Detaljer

Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF

Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF Normalformer or Normalisering 1NF, 2NF, 3NF, BCNF Martin Giese 7. november 2018 1 Agenda Nytt eksempel Med funksjonelle avhengigheter 1NF (veldig kort) 2NF, Grundig Hva er vitsen? anomalier Få eksemplet

Detaljer

UNIVERSITETET I OSLO. Relasjonsmodellen. Relasjoner og funksjonelle avhengigheter. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO. Relasjonsmodellen. Relasjoner og funksjonelle avhengigheter. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO Relasjonsmodellen Relasjoner og funksjonelle avhengigheter Institutt for Informatikk INF3100-23.1.2007 Ellen Munthe-Kaas 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Relasjonsmodellen INF3100-18.1.2005 - Ragnar Normann 1 Relasjonsdatabasemodellen Datamodell Mengde av begreper for å beskrive strukturen til en database Relasjonsmodellen Databasen

Detaljer

UNIVERSITETET I OSLO. Oppskriftsbok. FDer og MVDer Relasjonsalgebra. Institutt for Informatikk. INF3100 Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO. Oppskriftsbok. FDer og MVDer Relasjonsalgebra. Institutt for Informatikk. INF3100 Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO Oppskriftsbok FDer og MVDer Relasjonsalgebra Institutt for Informatikk INF3100 Ellen Munthe-Kaas 1 Tillukningsalgoritmen Hvordan finne alle kandidatnøkler FDer og MVDer Hvordan finne

Detaljer

IN2090 Databaser og datamodellering. Databasedesign og normalformer

IN2090 Databaser og datamodellering. Databasedesign og normalformer IN2090 Databaser og datamodellering Databasedesign og normalformer Evgenij Thorstensen evgenit@ifi.uio.no Universitetet i Oslo 1 / 43 Oversikt Gode og dårlige skjemadesign (og litt historie) Funksjonelle

Detaljer

Oppskriftsbok. FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45

Oppskriftsbok. FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45 UNIVERSITETET I OSLO Oppskriftsbok FDer og MVDer - oversikt: se s. 3 Relasjonsalgebra - oversikt: se s. 45 Oppskriftsboken er ment brukt som oppslagsverk og eksempelsamling. Ikke alt er like viktig. I

Detaljer

INF3100 Databasesystemer

INF3100 Databasesystemer INF3100 Databasesystemer Forelesere: Naci Akkök Ragnar Normann Mål: Kjennskap til databasesystemer Oppgaver og moduler Virkemåte Implementasjon Teoretiske og praktiske problemer INF3100-19-20.1.2004 -

Detaljer

Relasjonsdatabasedesign, ekstramateriale (ikke pensum)

Relasjonsdatabasedesign, ekstramateriale (ikke pensum) UNIVERSITETET I OSLO Relasjonsdatabasedesign, ekstramateriale (ikke pensum) Normalformer utover 4NF Bruk av Datalog for å uttrykke mer komplekse integritetsregler Institutt for Informatikk INF3100-24.1.2014

Detaljer

Plenum: Nøkler, normalformer og funksjonelle avhengigheter

Plenum: Nøkler, normalformer og funksjonelle avhengigheter Plenum: Nøkler, normalformer og funksjonelle avhengigheter Mathias Stang 14. november 2017 1 Agenda Hva er god databasedesign? Atomære verdier Nøkler: Supernøkler, kandidatnøkler, primærnøkler, nøkkelattributter

Detaljer

Oppgaver INF3100. Oversikt over innholdet

Oppgaver INF3100. Oversikt over innholdet Oppgaver INF3100 Dette heftet inneholder først og fremst løsningsforslag til oppgaver fra læreboken, men også noen ekstraoppgaver. Ekstraoppgavene er gitt navn etter hvilket kapittel de tilhører, og løsningsforslag

Detaljer

IN2090 Introduksjon til databaser

IN2090 Introduksjon til databaser UNIVERSITETET I OSLO IN2090 Introduksjon til databaser Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk IN2090 26.9.2018!1 Relasjonsmodellen

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO Dagens tema: INF1300 Introduksjon til databaser Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Institutt for informatikk INF1300 12.9.2016 1 Relasjonsmodellen

Detaljer

INF212 - Databaseteori. Kursinnhold

INF212 - Databaseteori. Kursinnhold INF212 - Databaseteori Forelesere: Naci Akkök Ellen Munthe-Kaas Mål: Kjennskap til databasesystemer Virkemåte Implementasjon Teoretiske og praktiske problemer INF212 v2003 1 Kursinnhold Databasedesign

Detaljer

Universitetet i Oslo Institutt for informatikk. Relasjonsmodellen og normaliseringsteori. Til bruk i IN 212. Ragnar Normann.

Universitetet i Oslo Institutt for informatikk. Relasjonsmodellen og normaliseringsteori. Til bruk i IN 212. Ragnar Normann. Universitetet i Oslo Institutt for informatikk Relasjonsmodellen og normaliseringsteori Til bruk i IN 212 Ragnar Normann Kompendium 64 4. utgave. Januar 1999 INNHOLD i Innhold 1 Metaspråket 1 1.1 Algebraer...

Detaljer

Oppgaver INF3100. Oversikt over innholdet

Oppgaver INF3100. Oversikt over innholdet Oppgaver INF3100 Dette heftet inneholder først og fremst løsningsforslag til oppgaver fra læreboken, men også noen ekstraoppgaver. Ekstraoppgavene er gitt navn etter hvilket kapittel de tilhører, og løsningsforslag

Detaljer

Databaser. - Normalisering -

Databaser. - Normalisering - Databaser - Normalisering - Innholdsfortegnelse 1. Normalisering... 2 1.1. Redundans... 2 1.2. Anomalier (uregelmessigheter etter oppdateringer i databasen)... 2 1.2.1. Innsettingsanomalier (Insertion

Detaljer

Normalisering. Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering

Normalisering. Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering Normalisering Motivasjon Redundans Funksjonelle avhengigheter Determinanter Partielle avhengigheter Transitive avhengigheter Normalformer: 1NF, 2NF, 3NF, BCNF Normaliseringsstegene Denormalisering Pensum:

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner

Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsmodellen (funksjonelle avhengigheter og nøkler, integritetsregler) Realisering: Fra ORM til relasjoner Institutt for informatikk

Detaljer

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det.

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det. UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 - Databaseteori Eksamensdag : Onsdag 8. juni 1994 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg

Detaljer

Normalisering. Hva er normalisering?

Normalisering. Hva er normalisering? LC238D http://www.aitel.hist.no/fag/_dmdb/ Normalisering Hva er normalisering? side 2 Normaliseringens plass i utviklingsprosessen side 3 Eksempel side 4 Funksjonell avhengighet side 5-6 Første normalform

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsmodellen Funksjonelle avhengigheter og nøkler Realisering: Fra ORM til relasjoner Institutt for informatikk INF1300--15.9.2009--michael@ifi.uio.no

Detaljer

Relasjonsmodellen og normaliseringsteori

Relasjonsmodellen og normaliseringsteori Relasjonsmodellen og normaliseringsteori Til bruk i INF3100 Ragnar Normann 5. utgave, mai 2013 INNHOLD i Innhold 1 Metaspråket 1 1.1 Algebraer................................. 1 1.2 1. ordens logikk.............................

Detaljer

UNIVERSITETET. Relasjonsalgebra. INF Ragnhild Kobro Runde

UNIVERSITETET. Relasjonsalgebra. INF Ragnhild Kobro Runde UNIVERSITETET IOSLO Relasjonsalgebra Regning med relasjoner 1 Annen bruk av chasealgoritmen (korrigert lysark) For å vise en FD X Y starter tabellen med to rader som er like for attributtene i X, og ulike

Detaljer

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det

Det matematisk-naturvitenskapelige fakultet. Kontroller at oppgavesettet er komplett før du begynner å besvare det UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 Databaseteori Eksamensdag : Fredag 6. juni 1997 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 5 sider Vedlegg :

Detaljer

For alle ikke-trivielle FDer X A i R: eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R

For alle ikke-trivielle FDer X A i R: eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R 1NF-BCNF For alle ikke-trivielle FDer X A i R: X er en supernøkkel i R eller A er et nøkkelattributt i R eller X K for noen kandidatnøkkel K i R 1 Normalisering Finn alle ikke-trivielle ti i FDer som gjelder

Detaljer

Relasjonsalgebraen. Algebra

Relasjonsalgebraen. Algebra Relasjonsalgebraen Definerer en mengde av operasjoner på relasjoner Gir oss et språk til å beskrive spørsmål om innholdet i relasjonene Språket er prosedyralt: Vi sier hvordan svaret skal beregnes. Alternativet

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-8.2.2010 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ragnar Normann

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ragnar Normann UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et språk til å beskrive spørsmål om

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 9. juni 2008 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 5 sider. Vedlegg: Tillatte hjelpemidler: INF3100 Databasesystemer

Detaljer

Repetisjon: Normalformer og SQL

Repetisjon: Normalformer og SQL IN2090 databaser og datamodellering Repetisjon: Normalformer og SQL Mathias Stang og Stein Michael Storleer 21. november 2018 1 Agenda Normalformer Funksjonelle avhengigheter Nøkler Finne hvilke normalformer

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et språk til å beskrive spørsmål om

Detaljer

Databaser: Relasjonsmodellen, del I

Databaser: Relasjonsmodellen, del I LC238D http://www.aitel.hist.no/fag/_dmdb/ Databaser: Relasjonsmodellen, del I En relasjon er en matematisk mengde side 2 Egenskaper ved relasjoner side 3 Entitetsintegritet side 4-5 Referanseintegritet

Detaljer

Kunnskapsorganisasjon og gjenfinning 1

Kunnskapsorganisasjon og gjenfinning 1 Kunnskapsorganisasjon og gjenfinning 1 Normalisering Tine Lodberg Frost Normalisering 14.10.2014 Dagens forelesning Pensum Berget, G. (2010). Relasjonsdatabaser og datamodellering (3. utg.). Oslo: Høgskolen

Detaljer

Løsningsforslag maskindatabasen på Ifi SQL og normalisering

Løsningsforslag maskindatabasen på Ifi SQL og normalisering Løsningsforslag maskindatabasen på Ifi SQL og normalisering Oppgave 1 select prosjektid, ansattid, dato, timer from Prosjekttimer where status = 'merknad' order by prosjektid, ansattid; Oppgave 2 Fra primærnøkkelen

Detaljer

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Løsningsskisse til Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Eksamensdato: 26. mai 2014 Eksamenstid (fra-til): 09:00-13:00 Hjelpemiddelkode/Tillatte

Detaljer

1. Normalisering Kommentarer til læreboka

1. Normalisering Kommentarer til læreboka Tore Mallaug 6.11.2007 Opphavsrett: Forfatter og Stiftelsen TISIP Lærestoffet er utviklet for fagene LN323D Databaser 1. Resymé: Denne leksjonen viser et eksempel på normalisering av en liten database.

Detaljer

Løsningsforslag for Eksamensoppgave i TDT4145 Datamodellering og databasesystemer

Løsningsforslag for Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Institutt for datateknikk og informasjonsvitenskap Løsningsforslag for Eksamensoppgave i TDT4145 Datamodellering og databasesystemer Faglig kontakt under eksamen: Svein Erik Bratsberg: 995996 Roger Midtstraum:

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Informasjonsbærende referansemåter Resten av realiseringsalgoritmen Sterk realisering Realisering versus modellering INF1300-31.10.2016

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 11. juni 2013 Tid for eksamen: 9.00 13.00 Oppgavesettet er på 6 sider. Vedlegg: ingen Tillatte

Detaljer

UNIVERSITETET RELASJONSALGEBRA. Regning g med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1

UNIVERSITETET RELASJONSALGEBRA. Regning g med relasjoner. Institutt for Informatikk. INF Ellen Munthe-Kaas 1 UNIVERSITETET IOSLO RELASJONSALGEBRA Regning g med relasjoner Institutt for Informatikk INF3100-7.2.2011 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss

Detaljer

Det matematisk-naturvitenskapelige fakultet

Det matematisk-naturvitenskapelige fakultet UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i : IN 212 Databaseteori Eksamensdag : Fredag 7. juni 1996 Tid for eksamen : 09.00-15.00 Oppgavesettet er på : 6 sider Vedlegg :

Detaljer

Integritetsregler i SQL

Integritetsregler i SQL UNIVERSITETET I OSLO Integritetsregler i SQL INF3100 8.2.2005 Ragnar Normann 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF1300 Introduksjon til databaser Eksamensdag: 1. desember 2014 Tid for eksamen: 09.00 15.00 Oppgavesettet er på 5 sider. Vedlegg:

Detaljer

Databaser fra et logikkperspektiv

Databaser fra et logikkperspektiv Databaser fra et logikkperspektiv Evgenij Thorstensen IFI, UiO Høst 2013 Evgenij Thorstensen (IFI, UiO) Databaser fra et logikkperspektiv Høst 2013 1 / 31 Outline 1 Logikk som verktøy 2 Relasjonsdatabaser

Detaljer

Oppgave 1 ER- og relasjonsmodell 10 %

Oppgave 1 ER- og relasjonsmodell 10 % Side 1 av 7 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER

Detaljer

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt.

D: Ingen trykte eller håndskrevne hjelpemiddel tillatt. Bestemt, enkel kalkulator tillatt. Side 1 av 7 Norges teknisk-naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap LØSNINGSFORSLAG TIL KONTINUASJONSEKSAMEN I FAG TDT4145 DATAMODELLERING OG DATABASESYSTEMER

Detaljer

INF3100 V2016 Obligatorisk oppgave nr. 1

INF3100 V2016 Obligatorisk oppgave nr. 1 INF3100 V2016 Obligatorisk oppgave nr. 1 Oppgavesettet skal løses og leveres individuelt. Gjennomføring og innlevering av oppgaven skal skje i henhold til gjeldende retningslinjer ved Institutt for informatikk,

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 8. juni 2010 Tid for eksamen: 14.30 17.30 Oppgavesettet er på 5 sider. Vedlegg: Ingen Tillatte

Detaljer

INF3100 V2015 Obligatorisk oppgave nr. 1

INF3100 V2015 Obligatorisk oppgave nr. 1 INF3100 V2015 Obligatorisk oppgave nr. 1 Oppgavesettet skal løses og leveres individuelt. Gjennomføring og innlevering av oppgaven skal skje i henhold til gjeldende retningslinjer ved Institutt for informatikk,

Detaljer

Integritetsregler i SQL. Primærnøkler

Integritetsregler i SQL. Primærnøkler Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende integritetsregler skranker på attributter og tupler Interrelasjonsskranker assertions Triggere INF212

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i: INF3100 Databasesystemer Eksamensdag: 13. juni 2016 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 6 sider. Vedlegg: ingen

Detaljer

INF3100 V2018 Obligatorisk oppgave nr. 1

INF3100 V2018 Obligatorisk oppgave nr. 1 INF3100 V2018 Obligatorisk oppgave nr. 1 Oppgavesettet skal løses og leveres individuelt. Gjennomføring og innlevering av oppgaven skal skje i henhold til gjeldende retningslinjer ved Institutt for informatikk,

Detaljer

INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1

INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1 INF1300 Relasjonsalgebra og SQL, mengder og bager. Lysark for forelesning v. 2.1 Dagens temaer Relasjonsalgebraen Renavning Algebra Heltallsalgebra Klassisk relasjonsalgebra Mengdeoperatorer Union Snitt

Detaljer

UNIVERSITETET I OSLO

UNIVERSITETET I OSLO UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF3100 Databasesystemer Eksamensdag: 11. juni 2012 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 5 sider. Vedlegg: Ingen Tillatte

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-2.2.2015 Ellen Munthe-Kaas Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer)

Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember :30 18:30 (4 timer) Løsningsforslag til eksamen i IN2090 Databaser og datamodellering og INF1300 Introduksjon til databaser 6. desember 2018 14:30 18:30 (4 timer) 1. Eksterne skranker (5%) I modellene nedenfor (ORM2) skal

Detaljer

Integritetsregler i SQL

Integritetsregler i SQL UNIVERSITETET I OSLO Integritetsregler i SQL Institutt for Informatikk INF3100 13.2.2007 Ellen Munthe-Kaas 1 Integritetsregler i SQL Kandidat- og primærnøkler Referanseintegritet - fremmednøkler Domenebegrensende

Detaljer

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas

UNIVERSITETET I OSLO RELASJONSALGEBRA. Regning med relasjoner. Institutt for Informatikk INF Ellen Munthe-Kaas UNIVERSITETET I OSLO RELASJONSALGEBRA Regning med relasjoner Institutt for Informatikk INF3100-3.2.2016 Ellen Munthe-Kaas 1 Relasjonsalgebraen definerer en mengde av operasjoner på relasjoner gir oss et

Detaljer

SQL Structured Query Language

SQL Structured Query Language SQL Structured Query Language Mer SQL: kandidat-, primær- og fremmednøkler Definere tabeller med integritetsregler Hente data fra tabeller select-from-where distinct order by Eksempler kjøres i PostgreSQL

Detaljer

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn

EKSAMENSFORSIDE Skriftlig eksamen med tilsyn EKSAMENSFORSIDE Skriftlig eksamen med tilsyn Emnekode: Emnenavn: DAT1000 Database 1 Dato: Tid fra / til: 13.05.2019 10.00 14.00 Ansvarlig faglærer: Bjørn Kristoffersen Campus: Fakultet: Bø Handelshøyskolen

Detaljer

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data

SQL Structured Query Language. Definere tabeller Skranker Fylle tabeller med data SQL Structured Query Language Definere tabeller Skranker Fylle tabeller med data Lage en tabell med SQL create table R (A 1 D 1 [S 1 ],... A n D n [S n ], [liste av skranker] R er navnet på relasjonen/tabellen

Detaljer

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser

UNIVERSITETET I OSLO INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Underbegreper og underbegrepsforklaringer Kombinerte påkrevde roller Undertrykking av begreper Ekvivalente stier og joinskranker Behandling

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Ringskranker Klisjéer Tommelfingerregler ORM og normalisering Denormalisering og splitting ORM som metode INF1300 7.11.2016 Ellen Munthe-Kaas

Detaljer

EKSAMEN DATABASER

EKSAMEN DATABASER EKSAMEN 6102 DATABASER 30.05.2016 Tid: 4 timer (9-13) Målform: Sidetall: Hjelpemidler: Merknader: Vedlegg: Bokmål 7 (inkludert denne) Ingen Ingen Eksempeldata Sensuren finner du på StudentWeb. Vekting

Detaljer

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse

INF3140 Modeller for parallellitet INF3140/4140: Programanalyse INF3140/4140: Programanalyse Uke 4, side 1. Hvordan sjekke egenskaper ved programmer? Testing eller debugging øker tilliten til programmet ved prøving, men gir ingen garanti for korrekthet Operasjonell

Detaljer

INF1300 Introduksjon til databaser

INF1300 Introduksjon til databaser UNIVERSITETET I OSLO INF1300 Introduksjon til databaser Dagens tema: Relasjonsalgebraen Oversettelse av select-from-where til relasjonsalgebra SQL: union, snitt, differanse, kartesisk produkt INF1300 22.10.2007

Detaljer

Tillegg til kapittel 11: Mer om relasjoner

Tillegg til kapittel 11: Mer om relasjoner MAT1140, H-16 Tillegg til kapittel 11: Mer om relasjoner I læreboken blir ekvivalensrelasjoner trukket frem som en viktig relasjonstype. I dette tillegget skal vi se på en annen type relasjoner som dukker

Detaljer

Utvalgsaksiomet, velordningsprinsippet og Zorns lemma

Utvalgsaksiomet, velordningsprinsippet og Zorns lemma Utvalgsaksiomet, velordningsprinsippet og Zorns lemma Dag Normann Universitetet i Oslo Matematisk Institutt Boks 1053 - Blindern 0316 Oslo 13. mars 2007 I dette notatet skal vi gi et bevis for ekvivalensen

Detaljer