IN2090-ukesoppgaver: Uke 8
Normalformer og tapsfri dekomposisjon
Oppgave 1
F?lgende relasjon bryter med 2NF:
EksamensResultat(emnekode, studentId, semester, emnenavn, karakter)
hvor emnekode bestemmer emnenavn; prim?rn?kkel er {emnekode, studentId, semester}.
- Forklar hvorfor denne relasjonen ikke oppfyller 2NF.
- Dekomponer tapsfritt til BCNF.
Oppgave 2
F?lgende relasjon bryter med 2NF: R(A, B, C, D, E, F) med f?lgende FD-er:
B,C → DE → F
- Hvorfor bryter denne med 2NF?
- Dekomponer relasjonen til BCNF.
Oppgave 3
Vi har relasjonen: Timeliste(ansattnr, uke, ?r, navn, antTimer) hvor ansattnr bestemmer navn og {ansattnr, uke ?r} er eneste kandidatn?kkel.
- Hvilke funksjonelle avhengigheter har relasjonen?
- Tilfredsstiller denne relasjonen 2NF? Hvorfor/hvorfor ikke?
Oppgave 4
Vi har relasjonen: Ordre(ordre, kundenr, kundenavn, antall, sum, mva) hvor kundenummer bestemmer kundenavn, mva-verdien er alltid 25% av sum og ordre er eneste kandidatn?kkel.
- Hvilke funksjonelle avhengigheter har relasjonen?
- Hvilken normalform har relasjonen?
Oppgave 5 (fra eksamen 2015)
I denne oppgaven skal vi bruke f?lgende relasjon: Filmgenre(filmid, title, prodyear, genre) Prim?rn?kkelen i tabellen er kombinasjonen av filmid og genre; alts? {filmid, genre}. Videre vet vi ogs? at filmid bestemmer b?de tittel og produksjons?r for en film.
- Bestem alle supern?klene i relasjonen
Filmgenre. Skriv ned alle. - Bestem alle FD-ene i relasjonen
Filmgenre. - Hvilken normalform er relasjonen
Filmgenrep?? Begrunn svaret ditt.