E00 (% af 2 timer) En database til registrering af produkter i en produktionsvirksomhed har følgende skema, hvor primærnøgler er understreget:

Størrelse: px
Starte visningen fra side:

Download "E00 (% af 2 timer) En database til registrering af produkter i en produktionsvirksomhed har følgende skema, hvor primærnøgler er understreget:"

Transkript

1 OBS-OBS: Der tages forbehold for fejl og mangler i besvarelserne. Der er ikke tale om "officielle" løsninger, men blot notater som er sendt til censor i forbindelse med godkendelse af opgaverne. E00 (% af 2 timer) Opgave 1 (20%) Givet en relation R med skemaet R(A, B, C, D, E) og følgende afhængigheder: {A, B} ->> C, D -> E. Kan det sluttes at {A, B} -> C også må gælde? Kan det sluttes at D ->> E? Giv i forbindelse med svaret en kort forklaring. Spørgsmål 2 Givet at R indeholder 3 tupler (d,f,a,b,c), (d,f,b,d,e), (e,g,a,b,c). Hvilke tupler må R da også indeholde? Normaliser R til Boyce-Codd normalform. Svar Opgave 1 (20%) Kan det sluttes at {A, B} -> C også må gælde? Nej, med X ->> Y er kombinationer af (X,Y) med samme X og forskelligt Y nemlig en mulighed. Kan det sluttes at D ->> E? Ja. X -> Y betyder: kun en værdi til Y, givet en værdi for X. Altså må specielt, for to tupler t1 og t2 i relation R med t1[x]=t2[x], gælde at t1[y]= t2[y]. Derfor findes altid to tupler t3 og t4, så t1[x]=t2[x]= t3[x]=t4[x] og t3[y]=t1[y]= t4[y]=t2[y] og t3[r-xy]=t2[r-xy]= t4[r-xy]=t1[r- XY], nemlig tuplerne t3=t2 og t4=t1. Spørgsmål 2 Givet at R indeholder 3 tupler (d,f,a,b,c), (d,f,b,d,e), (e,g,a,b,c). Hvilke tupler må R da også indeholde? Da må R (pga. de 2 første og AB ->> C) også indeholde de 2 tupler (d,f,b,b,c), (d,f,a,d,e).... Opgave 2 (50%) En database til registrering af produkter i en produktionsvirksomhed har følgende skema, hvor primærnøgler er understreget: produkt(pnr, p)

2 stykliste(pnr, del-pnr) lager(lnr, kvm, bynr) opbevares(pnr, lnr, antal) by(bynr, by) Til skemaet knyttes følgende kommentarer. Relationen produkt omfatter et produkts stamoplysninger, der her er produktets nummer og, hhv. pnr, og p. stykliste er en del-af relation, der udtrykker at produktet del-pnr er en del af produktet pnr. Relationen lager indeholder stamoplysninger om et lager, hvilket er et nummer, et areal i kvadratmeter og et bynummer, hhv. lnr, kvm og bynr. I opbevares registreres hvilke produkter, der opbevares på et lager; produktet pnr opbevares på lageret lnr. Endelig indeholder relationen by et nummer og et for en by i hhv. bynr og by. Skitser et ER-diagram, der kan give anledning til dette skema. Spørgsmål 2 Formuler i SQL følgende forespørgsler: I hvilke byer (angiv ) oplagres produktet med p "tryklodder"? Angiv det samlede antal der produceres af produktet med p "tryklodder" fordelt på by, idet der ses bort fra byen med et Herning. Et produkts umiddelbare delprodukter er dem, der optræder sammen med produktet i stykliste. Formuler endvidere i SQL følgende: a) I hvilke byer kan man producere produktet med nr. 17? Forudsætningen for at producere et produkt i en by er at alle produktets umiddelbare delprodukter opbevares på et lager i byen. b) I hvilke byer opbevares hverken produktet med nummer 17 eller dettes umiddelbare delprodukter? Spørgsmål 4 Virksomheden har gennemført en politik for produktnummerering, således at et produkt A, der er en del af et andet produkt B, altid har et lavere nummer end det andet produkt. Skitser i SQL en del af databaseskemaet, der omfatter en begrænsning, som sikrer, at der ikke er "cykler" i styklisten (et produkt A må ikke være en del af sig selv og må ikke have delprodukter, der har A som delprodukt, osv.) Spørgsmål 5 Virksomheden har endvidere en politik, der går ud på at ethvert produkt skal findes på mindst et lager. Skitser hertil en trigger der, i forbindelse med oprettelsen af et ny produkt med pnr = X, automatisk sikrer at dette opbevares med antal 1 på lageret med lnr=0 - altså opretter en tupel (X, 0, 1) i opbevares.

3 Svar Opgave 2 (50%) lnr kvm bynr by lager ligger i by opbevares antal stykliste produkt pnr p Spørgsmål 2 I hvilke byer (angiv ) oplagres produktet med p "tryklodder"? select by from produkt p, opbevares o, lager l, by b where p.pnr=o.pnr and o.lnr=l.lnr and l.bynr=b.bynr and p="tryklodder" Angiv det samlede antal der produceres af produktet med p "tryklodder" fordelt på by, idet der ses bort fra byen med et Herning. select by, sum(antal) from produkt p, opbevares o, lager l, by b where p.pnr=o.pnr and o.lnr=l.lnr and l.bynr=b.bynr and by<>"herning" group by by a) I hvilke byer kan man producere produktet med nr. 17? select by from by b where not exists ( select del-pnr from stykliste where pnr=17 except select pnr from opbevares o, lager l where o.lnr=l.lnr and l.bynr=b.bynr ) b) I hvilke byer opbevares hverken produktet med nummer 17 eller dettes umiddelbare delprodukter? select by from by b where not exists ( select pnr from opbevares o, lager l where o.lnr=l.lnr and l.bynr=b.bynr intersect ( select pnr from produkt where pnr=17

4 union select del-pnr from stykliste where pnr=17 ) ) Spørgsmål 4 Virksomheden har gennemført en politik for produktnummerering, således at et produkt A, der er en del af et andet produkt B, altid har et lavere nummer end det andet produkt. Skitser en del af databaseskemaet, der omfatter en sikring af, at der ikke er "cykler" i styklisten (et produkt A må ikke være en del af sig selv og må ikke have delprodukter, der har A som delprodukt, osv.) Kan klares hvis stykliste defineres ved: create table stykliste ( pnr int references produkt, del-pnr int references produkt, check (del-pnr < pnr), primary key (pnr, del-pnr) ); Spørgsmål 5 Virksomheden har endvidere en politik, der går ud på at ethvert produkt skal findes på mindst et lager. Skitser hertil en trigger der, i forbindelse med oprettelsen af et ny produkt, automatisk sikrer at dette opbevares med antal 1 på lageret med lnr=0 - altså opretter en tupel (x, 0, 1), hvor x er pnr for det nye produkt, i opbevares. Kan i princippet håndteres med følgende: create trigger trig after insert on produkt referencing new as nnn insert into opbevares (nnn.pnr, 0, 1) Opgave 3 (30%) Til administration af den del af det offentlige trafiknet, der vedrører busdrift, skal der konstrueres et system med en database, der registrerer følgende. Om alle busdrift-selskaber registreres et entydigt nummer snr samt. For de involverede busser registreres bussens registreringsnummer regnr og antallet af sæder antal-sæder. De ruter der køres på registreres med et entydigt rutenr og længde for rutenangive i kilometer længde. Involverede chauffører registreres med et entydigt nummer cnr samt med. Endelig registreres samtlige ture der køres på en dag med et entydigt nummer tnr samt med tidspunkt for påbegyndelse af turen tid (der er altså ikke tale om en komplet køreplan kun tures starttidspunkt er registreret og der findes kun en slags dag altså ingen specielle lørdage eller søndage, f.eks.) Selskab er forbundet med bus, rute og chauffør i sammenhænge hhv. ejer, kører og ansat. Disse registrerer for et selskab hvilke busser det ejer, hvilke ruter det kører og hvilke chauffører det har ansat. Tur er forbundet med bus, rute og chauffør i sammenhænge hhv. i, på og med. Disse

5 registrerer om en tur at den gemmenføres "i" den givne bus, "på" den givne rute og "med" den givne chauffør. Et design for denne database er illustreret i nedenstående ER-diagram noterede skema. snr Selskab Ejer Kører Ansat regnr N N rutenr N cnr antalsæder Bus Rute Chauffør 1 1 længde 1 i på med N N N Tur tnr tid Oversæt skemaet angivet herover til et relationelt databaseskema. Noter evt. blot skemaet ved prædikatnotation (såsom "selskab(snr, )"). Husk at angive primærnøgler. Spørgsmål 2 Formuler i relationel algebra følgende forespørgsel til en database med skemaet fra spørgsmål 1. a) På hvilke ruter (angiv rutenr) kører en chauffør med "Knud Hansen"? b) Hvilke selskaber har ikke en chauffør med "Knud Hansen", der kører på en rute med rutenr 17? Formuler endvidere i SQL følgende. a) Hvormange siddepladser er der sammenlagt i busserne på de ture, der køres af chaufføren med "Knud Hansen"?

6 b) Formuler en forespørgsel, der resulterer i en liste over chauffører med og antal kilometer, der køres dagligt, idet der på listen kun medtages chauffører der kører mere end 200 km. dagligt. Svar Opgave 3 (30%) selskab(snr, ) bus(regnr, antal-sæde, snr) rute(rutenr, længde, snr) chauffør(cnr,, snr) tur(tnr, tid, regnr, rutenr, cnr) Spørgsmål 2... a) Hvormange siddepladser er der sammenlagt i busserne på de ture, der køres af chaufføren med "Knud Hansen"? select sum(antal-sæder) from chauffør, tur, bus where chauffør.cnr=tur.cnr and tur.regnr=bus.regnr and chauffør.="knud Hansen" b) Formuler en forespørgsel, der resulterer i en liste over chauffører med og antal kilometer, der køres dagligt, idet der på listen kun medtages chauffører der kører mere end 200 km. dagligt. select chauffør., sum(længde) from chauffør, tur, rute where chauffør.cnr=tur.cnr and tur.rutenr=rute.nutenr group by cnr having sum(længde) 200

7 F00 (% af 2 timer) Opgave 1 (20%) Antag at vi har en relation R med fire attributter A, B, C og D. Under punkterne 1-3 nedenfor er angivet tre alternative sæt af funktionelle afhængigheder, der vedrører R. Angiv for hver af disse, (i) nøgle(r) for R og (ii) hvilke af de angivne funktionelle afhængigheder, der bryder BCNF, samt (iii) en BCNF normalisering af R fremkommet ved at dekomponere R svarende til de angivne afhængigheder. OBS: Der er tale om tre alternative sæt af afhængigheder, der således skal behandles isoleret. 1. C D,C A,B C 2. B C,D A 3. A B,BC D,A C Svar 1.(i) B (ii) C D og C A bryder BCNF (iii) AC,BC og CD. 2.(i) BD (ii) B C og D A (iii) AD,BC,BD 3.(i) A (ii) BC D (iii) BCD,ABC. Opgave 2(10%) Antag at vi, for en relation S med skema S(A,B,C), har en forekomst med følgende fire tupler: (1,2,3),(4,2,3),(5,3,3),(5,3,4). Hvilke af afhængighederne 1-6 herunder kan man slutte ikke kan gælde for S (m.a.o. hvilke afhængigheder brydes af den givne forekomst). 1. A -> B 2. A ->> B 3. BC -> A 4. BC ->> A 5. B -> C 6. B ->> C Svar 2 3 og 5 Opgave 3 (40%) En database til håndtering af et flyselskabs flyvninger er designet med følgende skema: Lufthavn(Lnr, By) Flytype(Tnr, Navn, Antal-sæder, Hastighed)

8 Kan_lande(Lnr, Tnr) Fly(Flynr, Tnr) Rute(Rnr, Afstand, Fra-Lnr, Til-Lnr) Flyvning(Flyvningnr, Dag, Tid, Flynr, Rnr) I skemaet er nøgler understreget, og der er indført særlige attributter til entydig identifikation (Lnr for lufthavnsnummer, Tnr for Flytypenummer, m.fl). Lufthavn registrerer lufthavne med på byen, hvor de hører hjemme. I Flytype kan registreres flytyper med typebetegnelse (Navn), antal sæder, samt den hastighed de skal flyve med (det antages her kun at benyttes én hastighed). For flytyper er der tillige med Kan_lande registreret, hvilke lufthavne de kan lande i. Konkrete fly er registreret i Fly med angivelse af flytype (Tnr). En rute, der registreres i Rute, er blot en kombination af en afgangslufthavn (Fra-Lnr) og en ankomstlufthavn (Til-Lnr) med angivelse af afstand i kilometer imellem de to lufthavne. En flyvning, der registreres i Flyvning, foregår på en bestemt ugedag (Dag), til et fastlagt tidspunkt, med et bestemt fly og på en bestemt rute. Skitser et ER-diagram der kan give anledning til det angivne relationelle databaseskema. Svar 1 By Rnr Fra Lnr. Lufthavn Rute Afstand Til Tnr Kan_lande Navn Antal_sæder Flytype På Hastighed Af Flynr Fly Med Flyvning Dag Tid Flyvningnr

9 Spørgsmål 2 Formuler følgende forespørgsler, til en database med det givne database-skema, i SQL. Hvilke ruter (rnr), med en afstand (Afstand) på mindre end 500 km, går til lufthavnen Lnr = "L21". Hvilke ruter (rnr) har bestemmelsessted (by for lufthavn der flyves til) "København", der udgår fra lufthavne i en afstand af mindre end 500 km. fra "København". Angiv dag (Dag), afgangstidspunkt (Tid) og flyvetid for samtlige flyvninger på ruten med rutenummer Rnr="R35". Flyvetiden beregnes som Afstand/Hastighed. Svar 2 a) select Rnr from Rute where Til_Lnr="L21" and Afstand<500 b) select Rnr from Rute, Lufthavn where Til_Lnr=Lufthavn.Lnr and Lufthavn.By='København' and Afstand<500 c) select Dag, Tid, Afstand/Hastighed Flyvetid from Flyvning, Rute, Fly, Flytype where Rute.Rnr='R335' and Rute.Rnr=Flyvning.Rnr and Fly.Flynr=Flyvning.Flynr and FlyType.Tnr=Fly.Tnr Forklar hvad svaret udgør på forespørgslerne (udtrykt i hhv. SQL og relationel algebra) : a) select fra.by,til.by from rute, Lufthavn fra, Lufthavn til where rute.fra-lnr=fra.lnr and rute.til-lnr=til.lnr union select fra.by,til.by from rute r1, rute r2, Lufthavn fra, Lufthavn til where r1.fra-lnr=fra.lnr and r1.til-lnr=r2.fra-lnr and r2.til-lnr=til.lnr union select fra.by,til.by from rute r1, rute r2, rute r3, Lufthavn fra, Lufthavn til where r1.fra-lnr=fra.lnr and r1.til-lnr=r2.fra-lnr and r2.til-lnr=r3.fra-lnr and r3.til-lnr=til.lnr b) π (Flytype Fly Flyvning σ By= Stokholm (Rute Fra-Lnr=LnrLufthavn)) c) π B (ρ R(A,B,C,D) (Flytype) π A,B,C,D ((ρ R(A,B,C,D) (Flytype)) D<H(ρ S(E,F,G,H) (Flytype))))

10 Svar 3 a. par af byer, der er forbundne med ruter, direkte, via en eller via to andre byer. b. Typebetegnelserne for flytyper på fly, der flyver på ruter, der afgår fra Stokholm c. Typebetegnelserne for flytyper, der har den maksimale hastighed Opgave 4 (30%) Nedenstående ER-diagram repræsenterer et design af en database til registrering på et uddannelsessted, af: hvad de forskellige fag omfatter hvilke studerende, der er aktive på stedet samt for de studerende, hvilke aktiviteter de er i gang med og har gennemført. Fnr Navn Del_af Fag Læser Igang_med Anr Aktivitet Student Gennemført isa isa isa isa Pnr Navn Kursus Projekt Karakter Navn Navn. Lav en oversættelse det skitserede skema til et relationelt database skema. Nøgler skal medtages. Svar 1 fag(fnr,) aktivitet(anr, del-af-fnr) kursus(anr, ) projekt(anr, ) student(pnr,) igang_med(anr,pnr) gennemført(anr,pnr,karakter)

11 Spørgsmål 2 Forklar hvad der naturligt ud fra beskrivelse og diagram ovenfor må være begrænsninger på databasen, svarende til referenceintegritet. Formuler tillige disse begrænsninger ved brug af relationel algebra, idet der refereres til skemaet fra spørgsmål 1. Svar 2 aktivitet.del-af-fnr skal referere til eksisterende fag.fnr svarende til π del-af-fnr(aktivitet) π fnr (fag) = Ø do. for øvrige

12 E99 (% af 4 timer) Opgave 3 (25%) Til administration af busdrift er konstrueret en database med følgende relationelle skema (nøgler er understreget): selskab(snr, ) bus(regnr, antal-sæde, snr) rute(rutenr, længde, snr) chauffør(cnr,, snr) tur(tid, regnr, rutenr, cnr) Om alle busdriftselskaber er i selskab registreret et nummer samt et i hhv snr og. I bus er for hver bus registreret et registreringsnummer, et antal sæder og et selskabsnummer for selskabet, som bussen tilhører (i hhv. regnr, antal-sæde og snr). En rute er registreret ved et nummer (rutenr), en længde i kilometer (længde) og et selskabsnummer (snr) for selskabet, som har ansvaret for ruten, og en chauffør er registreret ved et nummer (cnr), et () samt et nummer for selskabet (snr), der har ansat chaufføren. Endelig registreres med tur, for hver tur en bus (regnr) kører på, en rute (rutenr) med en chauffør (cnr) og den tid der tager at køre turen (tid). Skitser er ER-diagram, der kan give anledning til ovenstående relationelle databaseskema snr Selskab Ejer Kører Ansat regnr rutenr Bus Rute Chauffør cnr antalsæder på længde tid Spørgsmål 2. Skitser ændringer i både ER-diagram og relationelt skema, der tager højde for at der indføres et entydigt nummer tnr på tur.

13 snr Selskab Ejer Kører Ansat regnr rutenr cnr Bus Rute Chauffør antalsæder i på længde med Tur tnr Det relationelle skema: selskab(snr, ) bus(regnr, antal-sæde, snr) rute(rutenr, længde, snr) chauffør(cnr,, snr) tur(tnr, tid, regnr, rutenr, cnr) I det følgende kan der ses bort fra disse ændringer. Formuler i relationel algebra følgende forespørgsler til en database med skemaet fra spørgsmål 1. a) På hvilke ruter (angiv rutenr) kører chaufføren med "Knud Hansen"? π rutenr σ ="Knud Hansen" (tur*chauffør) b) Hvilke selskaber (angiv ) har har enten busser med flere end 60 sæder eller ruter, der er længere end 200 km. π σ antal-sæde>60 (bus*selskab) U π σ længde>200 (rute*selskab) c) Hvilke selskaber (angiv ) har ingen chauffør, der hedder "Knud Hansen", men har enten busser med flere end 60 sæder eller ruter, der er længere end 200 km. (π σ antal-sæde>60 (bus*selskab) U π σ længde>200 (rute*selskab)) - π selskab. σ chauffør.="knud_hansen"(chauffør*selskab) tid Spørgsmål 4 Angiv med SQL for selskab og det totale antal sæder i samtlige selskabets busser opdelt på selskaber, idet der kun medtages selskaber med et gennemsnitligt antal sæder større end 10. select, sum(antal-sæde) antal from selskab, bus where selskab.snr=bus.snr

14 group by having avg(antal-sæde)>10 Spørgsmål 5 Med en naturlig join i udtrykket selskab*bus kan de to indgående relationer samles til een. (* er her naturlig join operatoren i relationel algebra) Angiv skemaet for resultatrelationen (der f.eks. kan kaldes sb) med nøgle og forklar endvidere hvorfor denne ikke er på Boyce-Codd normalform. Skema sb(snr,, regnr, antal-sæde) Fordi (f.eks.) snr -> og snr er ikke supernøgle. Opgave 4 (10%) Betragt mængden Γ af fem propositionelle formler opskrevet på klausulform: Γ = {Q P, R P, S P, P, Q S R T, Q} Vis ved resolution at Γ er inkonsistent. Γ = {Q P, R P, S P, P, Q S R T, Q, Q} pga. P og Q P Γ = {Q P, R P, S P, P, Q S R T, Q, Q, falsk} pga. Q og Q dermed inkonsistent Spørgsmål 2 Benyt modbevis ved resolution til at vise at med Γ ' = {Q P, R P, S P, P, Q S R T} har vi at Γ' T, altså at formlen T er beviselig udfra formlerne Γ'. Antag det modsatte - altså T Γ '' = {Q P, R P, S P, P, Q S R T, T} Γ '' = {Q P, R P, S P, P, Q S R T, T, Q} pga. Q P og P Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R} pga. R P og P Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R, S} pga. S P og P Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R, S, S R T } pga., Q S R T og Q Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R, S, S R T, R T } pga., S R T og S Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R, S, S R T, R T, T } pga., R T og R Γ '' = {Q P, R P, S P, P, Q S R T, T, Q, R, S, S R T, R T, T, falsk } pga., T og T altså en modstrid.

15 F99 (% af 4 timer) Opgave 3 (25%) En database til at støtte en bygherre er skitseret i følgende ER-diagram: hnr fag Håndværker tilbud udfører Opgave forudsætter opgnr opgave Med et skema som det viste skal kunne håndteres eet byggeprojekt, der involverer håndværkere og opgaver. Tilbud gives af håndværkere på opgaver, og til en opgave udvælges, på baggrund af de givne tilbud, en håndværker der skal udføre den. En opgave kan forudsætte at andre opgaver er udført (f.eks. fundamentet skal støbes før murerne kan mures). Oversæt ovenstående ER-skema til et relationelt databaseskema. Angiv heri nøgler og sørg for at det relationelle skema kan udtrykke det samme som ER-skemaet. Svar 1 Håndværker(hnr,, fag) Opgave(opgnr, beskrivelse, udføres-af-hnr) tilbud(opgnr, hnr) forudsætter(opgnr, forudsat-opgnr) Spørgsmål 2 Formuler til en database, med skemaet fra spørgsmål 1, følgende forespørgsler i SQL: A: Hvilke opgaver findes der flere tilbud på? B: Angiv de fag, hvor der findes håndværkere der kan starte byggeriet (dvs. håndværkere der skal udføre opgaver, der ikke forudsætter andre opgaver). Svar 1 A: select opgnr, count(hnr) from tilbud group by opgnr having count(hnr) > 1 B: select fag from håndværker, opgave where håndværker.hnr=opgave.udføres-af-hnr and opgnr not in (select opgnr from forudsætter) Modificer ER-skemaet således at højest to tilbud kan afgives på den samme opgave.

16 Skitser tillige en oversættelse til et relationelt skema af denne ændring. Svar 3 h hnr fag Håndværker tilbud1 tilbud2 udfører Opgave forudsætter opgnr opgave Håndværker(hnr,, fag) Opgave(opgnr, opgave, udføres-af-hnr, tilbudt-hnr1, tilbudt-hnr2) forudsætter(opgnr, forudsat-opgnr) Spørgsmål 4 Formuler i SQL en forespørgsel, der som svar angiver forudsatte opgaver med to attributter (opgave, forudsat-opgave) Forespørgslen skal udtrække forudsatte opgaver i to niveauer (hvis tag forudsætter mur og mur forudsætter fundament så skal ikke kun (tag,mur) og (mur, fundament) være i svaret, men også (tag, fundament)). Forklar hvordan en sådan forespørgsel kan formuleres til flere niveauer af forudsatte opgaver. Svar 4 Select o1.opgave, o2.opgave forudsat-opgave from opgave o1, opgave o2, forudsætter f where o1.opgnr=f.opgnr and o2.opgnr=f.forudsat-opgnr union Select o1.opgave, o2.opgave forudsat-opgave from opgave o1, opgave o2, forudsætter f 1, forudsætter f2 where o1.opgnr=f1.opgnr and f1.forudsat-opgnr=f2.opgnr and o2.opgnr=f2.forudsat-opgnr Fortsættes til n te niveau efter samme princip: n niveauer kræver n delforespørgsler, i te niveau kræver i eksemplarer af relationen forudsætter. Spørgsmål 5 Antag at vi som (delvist overlappende) supplement til ovenstående har en registrering af håndværkere med deres fag og de opgaver de kan udføre i følgende skema: Kan-udføre(hnr, fag, opgave) og at der gælder følgende multiværdi-afhængighed: hnr ->> fag. Normaliser Kan-udføre til 4 de normalform.

17 Svar 5 (hnr,fag) og (hnr, opgave) Opgave 4 (10%) Betragt mængden Γ af tre propositionelle formler opskrevet på klausulform (idet er negation og V er logisk eller): Γ = { P V Q V R V S, P, R} Tilføj een formel til Γ således at Q bliver beviselig og bevis Q ved modbevis ved resolution. Svar S tilføjes: Γ = { P V Q V R V S, P, R, S } modbeviset (idet Q tilføjes): Γ = { P V Q V R V S, P, R, S, Q, Q V R V S } Γ = { P V Q V R V S, P, R, S, Q, Q V R V S, Q V S } Γ = { P V Q V R V S, P, R, S, Q, Q V R V S, Q V S, Q } Γ = { P V Q V R V S, P, R, S, Q, Q V R V S, Q V S, Q, falsk }

18 E98 (% af 4 timer) Opgave 4 (15%) En database til et busselskab, der kan understøtte administrationen af køre- og arbejdsplaner er skitseret i følgende ER-diagram: type typeid sæder Bustype af start-tid pnr Bus i Tur med Chauffør busid på stedid Busrute rutested Stoppested ruteid køre-tid Til skemaet skal bemærkes følgende: en tur er noget, der foregår på en busrute i en bus med en chauffør og som starter til et bestemt tidspunkt (start-tid) og køreplaner er registreret i databasen sådan, at der til hvert sted på ruten er tilknyttet en køre-tid, dvs. den tid det tager på en tur at nå fra første stoppested til det aktuelle (første sted har derfor køretid 0). Oversæt ovenstående ER-skema til et relationelt databaseskema. Angiv heri nøgler (men se bort fra begrænsninger i øvrigt) og sørg for at det relationelle skema kan udtrykke det samme som ERskemaet. Svar 1 bustype(typeid,type,sæder) bus(busid, typeid) tur(start-tid, ruteid, busid, pnr) chauffør(pnr, ) busrute(ruteid) rutested(ruteid, stedid, køre-tid)

19 Spørgsmål 2 Modificer ER-skemaet således at rutested bliver en entitetstype i stedet for en sammenhæng ( relationship ), mens en oversættelse som i spørgsmål 1 giver samme resultat (også hvad angår primærnøgler). Svar 2 stedid Busrute for rutested har Stoppested ruteid rel-tid Modificer ER-skemaet således at Tur bliver en sammenhæng i stedet for en entitetstype, mens en oversættelse igen giver samme resultat som i spørgsmål 1 (også hvad angår primærnøgler). Svar 3 start-tid pnr Bus tur Chauffør busid Busrute ruteid Opgave 5 (15%) I nedenstående ER-diagram skitseres en database, der kan omfatte oplysninger om personer med nr. og samt personers venne- og terapeut-relationer.

20 pnr Person ven terapeut Hvordan vil et relationelt databaseskema, der svarer hertil, med to relationsskemaer person og ven, komme til at se ud? Hvilke integritets-begrænsninger bør medtages fordi de er udtrykt i ER-skemaet? Svar 1 Skema: Person(pnr,,tpnr) Ven(pnr,vpnr) Begrænsninger: Person(vpnr) fremmednøgle til Person(pnr) Ven(pnr) fremmednøgle til Person(pnr) Ven(vpnr) fremmednøgle til Person(pnr) Spørgsmål 2 Formuler til databasen forespørgslerne: Hvem er ven med deres terapeut? Hvilke terapeuter har venner? Det kan antages at, hvis der står i databasen, at A har en ven B, så står der også i databasen, at B har en ven A. Svar 2 Select pnr From Person Where tpnr in (select vpnr from ven where ven.pnr=person.pnr) Select pnr From ven Where where pnr in (select tpnr from person) Hvilke terapeuter har flere venner, der er terapeuter? Dan som svar en liste over terapeuter, der har mindst to venner, der er terapeuter. Svar 3 Select pnr From ven Where pnr in (select tpnr from person) And vpnr in (select tpnr from person) Group by pnr

21 Having count(vpnr) > 1

22 F98 (% af 4 timer) Opgave 4 (15%) En database til et busselskab, der kan understøtte administrationen af køre- og arbejdsplaner er skitseret i følgende ER-diagram: type typeid sæder Bustype af start-tid pnr Bus i Tur med Chauffør busid på stedid Busrute rutested Stoppested ruteid køre-tid Til skemaet skal bemærkes følgende: en tur er noget, der foregår på en busrute i en bus med en chauffør og som starter til et bestemt tidspunkt (start-tid) og køreplaner er registreret i databasen sådan, at der til hvert sted på ruten er tilknyttet en køre-tid, dvs. den tid det tager på en tur at nå fra første stoppested til det aktuelle (første sted har derfor køretid 0). Oversæt ovenstående ER-skema til et relationelt databaseskema. Angiv heri nøgler (men se bort fra begrænsninger i øvrigt) og sørg for at det relationelle skema kan udtrykke det samme som ERskemaet. Svar 1 bustype(typeid,type,sæder) bus(busid, typeid) tur(start-tid, ruteid, busid, pnr) chauffør(pnr, ) busrute(ruteid) rutested(ruteid, stedid, køre-tid)

23 Spørgsmål 2 Modificer ER-skemaet således at rutested bliver en entitetstype i stedet for en sammenhæng ( relationship ), mens en oversættelse som i spørgsmål 1 giver samme resultat (også hvad angår primærnøgler). Svar 2 stedid Busrute for rutested har Stoppested ruteid rel-tid Modificer ER-skemaet således at Tur bliver en sammenhæng i stedet for en entitetstype, mens en oversættelse igen giver samme resultat som i spørgsmål 1 (også hvad angår primærnøgler). Svar 3 start-tid pnr Bus tur Chauffør busid Busrute ruteid Opgave 5 (15%) I nedenstående ER-diagram skitseres en database, der kan omfatte oplysninger om personer med nr. og samt personers venne- og terapeut-relationer.

24 pnr Person ven terapeut Hvordan vil et relationelt databaseskema, der svarer hertil, med to relationsskemaer person og ven, komme til at se ud? Hvilke integritets-begrænsninger bør medtages fordi de er udtrykt i ER-skemaet? Svar 1 Skema: Person(pnr,,tpnr) Ven(pnr,vpnr) Begrænsninger: Person(vpnr) fremmednøgle til Person(pnr) Ven(pnr) fremmednøgle til Person(pnr) Ven(vpnr) fremmednøgle til Person(pnr) Spørgsmål 2 Formuler til databasen forespørgslerne: Hvem er ven med deres terapeut? Hvilke terapeuter har venner? Det kan antages at, hvis der står i databasen, at A har en ven B, så står der også i databasen, at B har en ven A. Svar 2 Select pnr From Person Where tpnr in (select vpnr from ven where ven.pnr=person.pnr) Select pnr From ven Where where pnr in (select tpnr from person) Hvilke terapeuter har flere venner, der er terapeuter? Dan som svar en liste over terapeuter, der har mindst to venner, der er terapeuter. Svar 3 Select pnr From ven Where pnr in (select tpnr from person) And vpnr in (select tpnr from person) Group by pnr

25 Having count(vpnr) > 1

Spørgsmål 2 Givet at R indeholder 3 tupler (d,f,a,b,c), (d,f,b,d,e), (e,g,a,b,c). Hvilke tupler må R da også indeholde?

Spørgsmål 2 Givet at R indeholder 3 tupler (d,f,a,b,c), (d,f,b,d,e), (e,g,a,b,c). Hvilke tupler må R da også indeholde? E00 (% af 2 timer) Opgave 1 (20%, E00) Givet en relation R med skemaet R(A, B, C, D, E) og følgende afhængigheder: {A, B} ->> C, D -> E. Kan det sluttes at {A, B} -> C også må gælde? Kan det sluttes at

Læs mere

Skriftlig eksamen i. Databaser. Vinter 2002/2003. Vejledende løsninger

Skriftlig eksamen i. Databaser. Vinter 2002/2003. Vejledende løsninger Skriftlig eksamen i Databaser Vinter 2002/2003 Vejledende løsninger Dette eksamenssæt består af 5 nummererede sider (incl. denne). Der er 5 opgaver, som ved bedømmelsen tillægges følgende vægte: Opgave

Læs mere

Skriftlig eksamen i. Databaser. Vinter 2002/2003

Skriftlig eksamen i. Databaser. Vinter 2002/2003 Skriftlig eksamen i Databaser Vinter 2002/2003 Dette eksamenssæt består af 5 nummererede sider (incl. denne). Der er 5 opgaver, som ved bedømmelsen tillægges følgende vægte: Opgave 1: 15% Opgave 2: 30%

Læs mere

Fra ER til RM. Databaser, efterår 2002. Troels Andreasen. Efterår 2002

Fra ER til RM. Databaser, efterår 2002. Troels Andreasen. Efterår 2002 Databaser, efterår 2002 Fra ER til RM Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Normalisering, del 2

Normalisering, del 2 Databaser, efterår 2002 Normalisering, del 2 Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Skriftlig eksamen i. Datalogi. Databaser. Sommer 2001

Skriftlig eksamen i. Datalogi. Databaser. Sommer 2001 Skriftlig eksamen i Datalogi Databaser Sommer 2001 Dette eksamenssæt består af 4 nummererede sider (incl. denne). Der er 4 opgaver, som ved bedømmelsen tillægges følgende vægte: Opgave 1: 20% Opgave 2:

Læs mere

Begrænsninger i SQL. Databaser, efterår 2002. Troels Andreasen

Begrænsninger i SQL. Databaser, efterår 2002. Troels Andreasen Databaser, efterår 2002 Begrænsninger i SQL Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Design ved normalisering

Design ved normalisering Databaser, efterår 2002 Design ved normalisering Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072

Læs mere

Skriftlig eksamen i Databaser, Vinter 2001/2002. Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men

Skriftlig eksamen i Databaser, Vinter 2001/2002. Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men Roskilde Universitetscenter Skriftlig eksamen i Databaser, Vinter 2001/2002 Opgaver med lsninger Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men har ikke haft tid til at polere

Læs mere

Funktionel afhængighed

Funktionel afhængighed Databaser, efterår 2002 Funktionel afhængighed Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Efterår 2002 Note 10. Temaopgave

Efterår 2002 Note 10. Temaopgave Datalogi Database-kurset Efterår 2002 Note 10 Temaopgave Formålet med temaopgaven er at I skal arbejde med vigtige dele af kursusstoffet indenfor et specifikt problemområde/tema. Temaopgaven omfatter 4

Læs mere

Databaser Obligatorisk opgave 1

Databaser Obligatorisk opgave 1 University of Southern Denmark Department of Mathematics and Computer Science Databaser Obligatorisk opgave 1 Afleveres senest: Lørdag d. 23. marts kl 23.59 Introduction Denne obligatoriske opgave indeholder

Læs mere

Relationel Algebra og SQL

Relationel Algebra og SQL Relationel Algebra og SQL Indholdsfortegnelse Relationel Algebra og SQL...1 Indholdsfortegnelse...1 De oprindelige mængdeoperationer...2 1. UNION (foreningsmængde)...2 2. INTERSECTION (fællesmængde)...2

Læs mere

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 4: Mere om E-R modellering. 24. februar 2005. Forelæser: Rasmus Pagh

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 4: Mere om E-R modellering. 24. februar 2005. Forelæser: Rasmus Pagh Databasesystemer, forår 2005 IT Universitetet i København Forelæsning 4: Mere om E-R modellering 24. februar 2005 Forelæser: Rasmus Pagh Forelæsningen i dag Fortsættelse af E-R model: Attributtyper, identifiers,

Læs mere

ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002

ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002 Databaser, efterår 2002 ER-modellen Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002 Databaser, efterår 2002 Databasesystemer Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Databasesystemer. IT Universitetet i København 7. juni 2005

Databasesystemer. IT Universitetet i København 7. juni 2005 Databasesystemer IT Universitetet i København 7. juni 2005 Eksamenssættet består af 5 opgaver med 13 spørgsmål, fordelt på 6 sider (inklusiv denne side). Vægten af hver opgave er angivet. Du har 4 timer

Læs mere

Afleveringsopgave. Efterår 2001

Afleveringsopgave. Efterår 2001 Datalogi Database-kurset Efterår 2001 Afleveringsopgave Baseret på opgavetekst forfattet af Troels Andreasen, forår 2001 Let redigeret af Henning Christiansen, oktober 2001 Aflevering Opgaven afleveres

Læs mere

Skriftlig eksamen i kurset. Informationssystemer

Skriftlig eksamen i kurset. Informationssystemer 6. semester sundhedsteknologi Skriftlig eksamen i kurset Informationssystemer Der er 3 timer til at besvare opgaven. Alle hjælpemidler er tilladte. Skriv kort og præcist. Referer gerne til kursuslitteraturen.

Læs mere

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5

Side 1. Databaser og SQL. Dagens gang. Databasebegreber. Introduktion til SQL Kap 1-5 Databaser og SQL Introduktion til SQL Kap 1-5 1 Dagens gang Databaser Database begreber Mapning af klasser til relationel model Normalisering Opgaver til næste gang 2 Databasebegreber A database is a:

Læs mere

Obligatorisk opgave 2. SQL, relationel algebra og relationel kalkyle

Obligatorisk opgave 2. SQL, relationel algebra og relationel kalkyle DM26 Obligatorisk opgave 2 SQL, relationel algebra og relationel kalkyle Jacob Christiansen 130282 moffe42 Thomas Duerlund 040980 duerlund Side 1 af 9 Opgave 1: Formål: Ud fra en database omhandlende en

Læs mere

Datalagring og formater

Datalagring og formater Datalagring og formater IT Universitetet i København 4. januar 2011 Eksamenssættet består af 6 opgaver med 15 spørgsmål, fordelt på 11 sider (inklusiv denne side). Det anbefales at læse opgaverne i rækkefølge,

Læs mere

Database design for begyndere

Database design for begyndere Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter

Læs mere

Views etc. Databaser

Views etc. Databaser Views etc. Databaser Views Med Views kan vi gemme nogle af de lange select sætninger. I vores eksempel fra tidligere er det f.eks. forbundet med en del besvær at finde telefon nr og bilmærker for en sælger

Læs mere

Introduktion til SQL queries

Introduktion til SQL queries Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i

Læs mere

Databasesystemer. IT Universitetet i København 16. januar 2006

Databasesystemer. IT Universitetet i København 16. januar 2006 Databasesystemer IT Universitetet i København 16. januar 2006 Eksamenssættet består af 5 opgaver med 16 spørgsmål, fordelt på 6 sider (inklusiv denne side), samt et svarark, hvor visse spørgsmål skal besvares.

Læs mere

Hvad er en relationsdatabase? Odense, den 19. januar Version 1.0

Hvad er en relationsdatabase? Odense, den 19. januar Version 1.0 Hvad er en relationsdatabase? Odense, den 19 januar 2004 Version 10 Program for 6 kursusdag: Databaser 0900-0945 Hvad er en relationsdatabase? -1045 Opgave om normalisering 1100-1145 Eksempel på database

Læs mere

Anvisning i aflevering af bitemporale data

Anvisning i aflevering af bitemporale data UDKAST udgivet juni 2019 Anvisning i aflevering af bitemporale data Baggrund Aflevering af data fra it-systemer til et offentligt arkiv er baseret på aflevering af en arkiveringsversion i en relationel

Læs mere

DML, Foresprgsler Relationel algebra + noget mere! af skemaer (overlap m. DDL)

DML, Foresprgsler Relationel algebra + noget mere! af skemaer (overlap m. DDL) SQL Stuctured Query Language, spiller roller som DDL, denere relationsskemaer m.v. DML, Foresprgsler Relationel algebra + noget mere! Opdatering af relationer af skemaer (overlap m. DDL) Hvem bruger SQL

Læs mere

Eksamen, DSDS, efterår 2007

Eksamen, DSDS, efterår 2007 Eksamen, DSDS, efterår 2007 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech og Martin Elsman IT Universitetet i København 7. januar 2008 Alle hjælpemidler er tilladte, dog ikke

Læs mere

Information Integration

Information Integration Databaser, efterår 2002 Information Integration Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072

Læs mere

ER-modellen. Databaser, efterår 2002. Troels Andreasen. Efterår 2002

ER-modellen. Databaser, efterår 2002. Troels Andreasen. Efterår 2002 Databaser, efterår 2002 ER-modellen Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Læs mere

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form Database-sproget SQL SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form SELECT A1,, Ar FROM R1,, Rk WHERE B med attributter A1,, Ar relationer R1,, Rk betingelse B (logisk

Læs mere

Dorthes Bog Centrum har ca forskellige bøger (bibliografiske enheder), som alle skal være søgbare fra prototypen.

Dorthes Bog Centrum har ca forskellige bøger (bibliografiske enheder), som alle skal være søgbare fra prototypen. Afleveringsopgave Hermed afleveringsopgaven for kurset. Besvarelsen, der gerne må udfærdiges i grupper, er del af den mundtlige eksamen (som i øvrigt er individuel). Problemet Efter flere møder med firmaet

Læs mere

Databasesystemer. IT Universitetet i København 8. juni 2006

Databasesystemer. IT Universitetet i København 8. juni 2006 Databasesystemer IT Universitetet i København 8. juni 2006 Eksamenssættet består af 5 opgaver med 16 spørgsmål, fordelt på 7 sider (inklusiv denne side), samt et svarark, hvorpå visse spørgsmål skal besvares.

Læs mere

DB undervisning 01-01

DB undervisning 01-01 Databaser... 2 Tabeller... 2 Redundans... 3 Første regel... 4 Anden regel... 4 Tredje regel... 5 Relationer... 5 Opskrift... 6 SQL sætninger til at oprette tabeller... 7 SQL sætninger til at indsætte data...

Læs mere

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML SQL kap 6-7 + 17-20 DDL og DML 1 De vigtigste SQL-sætninger Data Definition Language (DDL) create table: opretter en ny tabel create unique index: tilføjer et index til en tabel drop table : sletter en

Læs mere

(fig.1. Eksempel på en almindelig entity)

(fig.1. Eksempel på en almindelig entity) Formål Formålet med denne opgave var, at designe et database system for et fiktivt universitet, ved hjælp af ER-model, for derefter at oversætte det til SQL tabeller. Og dernæst lave en assertion så der

Læs mere

Henrik Bulskov Styltsvig

Henrik Bulskov Styltsvig Matematisk logik Henrik Bulskov Styltsvig Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk Disposition

Læs mere

Databasesystemer fra forskellige synsvinkler

Databasesystemer fra forskellige synsvinkler Databasesystemer fra forskellige synsvinkler Kim Skak Larsen kslarsen@imada.sdu.dk IMADA DM534 Introduktion til datalogi, 8/10 2015 p.1/60 Oversigt Introduktion Del 1: en designers synsvinkel Del 2: en

Læs mere

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28.

Sidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28. Sidste forelæsning Jacob Aae Mikkelsen IMADA 28. april 2013 Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28. april 2013 1 / 36 Outline 1 Brugere og Sikkerhed Jacob Aae Mikkelsen (IMADA) Sidste forelæsning

Læs mere

En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin

En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin Trin 1: Lav en Domain model Opgave beskrivelse - Scandic hotel kæde Lav en domain model af Hotel-kæden.

Læs mere

Import af rekursivt (parent-child) hierarki i Palo

Import af rekursivt (parent-child) hierarki i Palo Import af rekursivt (parent-child) hierarki i Palo Dette dokument beskriver hvordan et simpelt rekursivt (parent-child) hierarki kan importeres ind i Palo på forskellige måder via SQL og samtidig bibeholde

Læs mere

Manglende konsistens i datamodellen og upræcise SQLsætninger er årsagen til, at mange IT-systemer fejler.

Manglende konsistens i datamodellen og upræcise SQLsætninger er årsagen til, at mange IT-systemer fejler. Manglende konsistens i datamodellen og upræcise SQLsætninger er årsagen til, at mange IT-systemer fejler. Af Seniorkonsulent Carsten Saastamoinen-Jakobsen Skal datamodellen blot være på 3NF (normalform)?

Læs mere

Jørgen Koch. och. Access. Normalisering m.v.

Jørgen Koch. och. Access. Normalisering m.v. Jørgen Koch och Access 2003 2003 for alle Normalisering m.v. Access 2003 for alle 1. udgave, 1. oplag 2004 Copyright 2004 Forlaget Libris Forfatter: Jørgen Koch Forlagsredaktion: Kirsten Bæk DTP: Jørgen

Læs mere

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE Fact sheet Indholdsfortegnelse Fact Sheet Gantt kort Valgt af virksomhed Brainstorm Attribut tabel ER-diagram Skitse MySQLWorkbench

Læs mere

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel: Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra

Læs mere

PRÆSENTATION AF ER-DIAGRAMMER OG NORMALISERING

PRÆSENTATION AF ER-DIAGRAMMER OG NORMALISERING PRÆSENTATION AF ER-DIAGRAMMER OG NORMALISERING KIRSTINE ROSENBECK GØEG Tema Titel Materiale 1 IS i sundhedssektoren Patientdatas anvendelighed Lynge et al. 2 Registrering af patientdata Berg. Kap. 2 Waiting

Læs mere

1. Basal select med (stjerne)

1. Basal select med (stjerne) 1. Basal select med (stjerne) 1. List alle øltyper. a. select * from oltyper 2. List alle bryggerier a. select * from bryggeri 3. List alle Danmarks postnumre samt tilhørende by, landsdel og antal indbyggere

Læs mere

Data lagring. 2. iteration (implement backend)

Data lagring. 2. iteration (implement backend) Data lagring 2. iteration (implement backend) Emner Grundlæggende database begreber. Data definitionskommandoer ER-diagrammer og cardinalitet/relationer mellem tabeller Redundant data og Normalisering

Læs mere

Database. lv/

Database. lv/ Database 1 Database Design Begreber 1 Database: En fælles samling af logiske relaterede data (informationer) DBMS (database management system) Et SW system der gør det muligt at definer, oprette og vedligeholde

Læs mere

Opgave 1 Basal select med (stjerne)

Opgave 1 Basal select med (stjerne) Opgave 1 Basal select med (stjerne) 1. List alle øltyper. 2. List alle bryggerier 3. List alle Danmarks postnumre samt tilhørende by, landsdel og antal indbyggere 4. BONUS: List alle ølmærker med alt deres

Læs mere

Air Crash Booking System

Air Crash Booking System Air Crash Booking System Eksamensopgave i Databaser (ddb), E06 Vejleder: Louis Salvail Afleveret 27. oktober 2006 af: Jens Gram Pedersen, 20041039, mail@jensgram.dk 28 nummererede sider I N D H O L D S

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 26. maj 2009. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning

Læs mere

Søren Løbner (lobner) ddb Databaser 2007 10 10

Søren Løbner (lobner) ddb Databaser 2007 10 10 ddb Excercise Week 4 Fra relationships til relations Nu når vi har fået vores skemaer på plads, kan SQL udtrykkene til konstruktion af relationerne laves Det foregår ved at vi tager en 1 til 1 oversættelse

Læs mere

En Kort Introduktion til Oracle

En Kort Introduktion til Oracle En Kort Introduktion til Oracle Henrik Bulskov 12. februar 2001 bulskov@ruc.dk 1 Start SQL*Plus... 1 1.1 TELNET... 1 1.2 WINDOWS SQL PLUS... 2 2 Kør et SQL-script... 3 3 Hjælp i SQL*Plus... 3 4 Editering

Læs mere

Eksempel på en database: studenter, kurser, eksamener

Eksempel på en database: studenter, kurser, eksamener Udvidet Programmering 1999 Forelæsning 20, fredag 12. november 1999 Relationsdatabaser: relationer, tupler, attributter Forespørgselssproget SQL Databasesystemet PostgreSQL Tilgang til relationsdatabaser

Læs mere

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Øvelse 9. Klasser, objekter og sql-tabeller insert code here Øvelse 9. Klasser, objekter og sql-tabeller Denne opgave handler om hvordan man opbevarer data fra databasekald på en struktureret måde. Den skal samtidig give jer erfaringer med objekter, der kommer til

Læs mere

er et helt tal. n 2 AB CD AC BD (b) Vis, at tangenterne fra C til de omskrevne cirkler for trekanterne ACD og BCD står vinkelret på hinanden.

er et helt tal. n 2 AB CD AC BD (b) Vis, at tangenterne fra C til de omskrevne cirkler for trekanterne ACD og BCD står vinkelret på hinanden. Opgave Heltalligt Bestem alle hele tal, n >, for hvilke n + n er et helt tal. Opgave Trekantet I en spidsvinklet trekant ABC skærer vinkelhalveringslinien fra A siden BC i punktet L og den omskrevne cirkel

Læs mere

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet Eksamen 005, F0 side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 00. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler.

Læs mere

Algebra. Denition. Signatur: et antal sorter eller typer: (simple eller strukturerede). et antal konstantsymboler med type, og

Algebra. Denition. Signatur: et antal sorter eller typer: (simple eller strukturerede). et antal konstantsymboler med type, og Algebra Denition. Signatur: et antal sorter eller typer: (simple eller strukturerede). et antal konstantsymboler med type, og en antal operatorsymboler med rang 1 ::: n! hvor 'erne er typer. Eksempel:

Læs mere

Datamodeller. 1. Elementerne. Vi betragter E/R-diagrammet, som et diagram over entiteter og relationer Tegneregler: Entitet

Datamodeller. 1. Elementerne. Vi betragter E/R-diagrammet, som et diagram over entiteter og relationer Tegneregler: Entitet Datamodeller I forlængelse af noten om normalisering, følges der her op med redskabet E/R-diagrammer til opstilling af en datamodel, opfat således dette som en alternativ metode mere end endnu et redskab

Læs mere

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form

Database-sproget SQL. SELECT A1,, Ar FROM R1,, Rk WHERE B med. SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form Database-sproget SQL SQL ~ SEQUEL ~ Structered English QUEry Language SQL-forespørgsel, generel form SELECT A1,, Ar FROM R1,, Rk WHERE B med attributter A1,, Ar relationer R1,, Rk betingelse B (logisk

Læs mere

Samspillet mellem databaser og kort styres af GeoCAD programmet GeoDB.

Samspillet mellem databaser og kort styres af GeoCAD programmet GeoDB. GeoCad modul GeoDB I GeoCAD er det muligt at koble relationsdatabase til GeoEDIT. Her igennem er det muligt at lagre forskellige oplysninger i databasen og koble disse oplysninger til objekter i kortet.

Læs mere

Baggrundsnote om logiske operatorer

Baggrundsnote om logiske operatorer Baggrundsnote om logiske operatorer Man kan regne på udsagn ligesom man kan regne på tal. Regneoperationerne kaldes da logiske operatorer. De tre vigtigste logiske operatorer er NOT, AND og. Den første

Læs mere

Databaser Obligatorisk opgave 2 Vejledende løsning

Databaser Obligatorisk opgave 2 Vejledende løsning University of Southern Denmark Department of Mathematics and Computer Science Databaser Obligatorisk opgave 2 Vejledende løsning Afleveres senest: Søndag d. 5. maj kl 23.59 Spilleregler Denne obligatoriske

Læs mere

Jayne Alice Jensen cph-jj208@cphbusiness.dk [Link til portfolio]

Jayne Alice Jensen cph-jj208@cphbusiness.dk [Link til portfolio] DATABASE Projekt: Projekt 1, 3. semester Website: http://kostecki.dk/cph/projektdb/ Dato: 08/09/14-21/09/14 Skole: Copenhagen Business Academy Klasse: Multimediedesigner - Mulb Gruppe: MULB1 Undervisere:

Læs mere

Betjeningen i 4 områder (markeret med gult) giver anledning til nærmere analyse, da passagertallet er relativt beskedent.

Betjeningen i 4 områder (markeret med gult) giver anledning til nærmere analyse, da passagertallet er relativt beskedent. BILAG 5 Nedlæggelse af kørsel i nogle bydele Det er ikke i alle byområder busserne benyttes lige flittigt. Tabellen på den følgende side viser budgetterede passagertal fordelt på radialer og tidsrum. Betjeningen

Læs mere

Kap4: Velfærdseffekten af prisdiskriminering i flybranchen

Kap4: Velfærdseffekten af prisdiskriminering i flybranchen Side 1 af 5 Kap4: Velfærdseffekten af prisdiskriminering i flybranchen Når flyselskaberne opdeler flysæderne i flere klasser og sælger billetterne til flysæderne med forskellige restriktioner, er det 2.

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 37 Computer Science, kap 9. Hugh Darwen: what a database really is, G. Riccardi: Princples of database systems, kap 2., kompendium. Plan Oprette jer på IMV

Læs mere

Notat Betjening af Åbyskov med bybussystemet i Svendborg

Notat Betjening af Åbyskov med bybussystemet i Svendborg FynBus 11. juli 2014 PLAN SAZ/SJ Notat Betjening af Åbyskov med bybussystemet i Svendborg Baggrund FynBus har den 1. juli modtaget Notat vedr. muligheder for justeringer i den kollektive (Åbyskov og Troense).

Læs mere

Notat: Betjening af Karup lufthavn

Notat: Betjening af Karup lufthavn Notat: Betjening af Karup lufthavn Generelt: Bestyrelsen for Karup Lufthavn har bedt Midttrafik udarbejde notat med forslag til betjening af lufthavnen fra hovedbyer indenfor ejerkredsen. Notatet skal

Læs mere

24-03-2009. Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S

24-03-2009. Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S 24-03-2009 Problemstilling ved DBK integration i BIM Software Hvad skal der til. Nicolai Karved, Betech Data A/S Problemstilling ved DBK integration i BIM Software Domæner og aspekter Det domæne, der primært

Læs mere

Objektorientering og databaser

Objektorientering og databaser Databaser, efterår 2002 Objektorientering og databaser Troels Andreasen Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674

Læs mere

DATABASE - MIN MUSIKSAMLING

DATABASE - MIN MUSIKSAMLING DATABASE - MIN MUSIKSAMLING I dette forløb skulle vi lære om databaser, som bruger sproget SQL. SQL står for Structured Query Language. Det bruges til at vise og manipulere data, gemt i en database. I

Læs mere

Kundetilfredshed efterår Udarbejdet af DMA/Research A/S for Kundeservice, Midttrafik efterår 2008

Kundetilfredshed efterår Udarbejdet af DMA/Research A/S for Kundeservice, Midttrafik efterår 2008 Kundetilfredshed efterår 2008 Udarbejdet af DMA/Research A/S for Kundeservice, Midttrafik efterår 2008 0 Indhold Formål. 2 Om Undersøgelsen 3 Konklusion... 8 Resultater Tilfredshed (segment, køn, alder,

Læs mere

Conceptual, logic, physical

Conceptual, logic, physical Conceptual, logic, physical Conceptual er et billede af virkeligheden. Entity names og attributter relaterer til den faktiske verden. Physical er i SQL databasen, her skriver vi de navne på tabeller og

Læs mere

i x-aksens retning, så fås ). Forskriften for g fås altså ved i forskriften for f at udskifte alle forekomster af x med x x 0

i x-aksens retning, så fås ). Forskriften for g fås altså ved i forskriften for f at udskifte alle forekomster af x med x x 0 BAndengradspolynomier Et polynomium er en funktion på formen f ( ) = an + an + a+ a, hvor ai R kaldes polynomiets koefficienter. Graden af et polynomium er lig med den højeste potens af, for hvilket den

Læs mere

DM507 Eksamen Obligatorisk Opgave Rejseplanlægning

DM507 Eksamen Obligatorisk Opgave Rejseplanlægning Institut for Matematik og Datalogi Syddansk Universitet, Odense 21. februar 2011 LMF DM507 Eksamen Obligatorisk Opgave Rejseplanlægning 1 Problemet Denne opgave går ud på at lave et program, som ud fra

Læs mere

Spørgsmål og Svar A3 udbud af almindelig rutekørsel

Spørgsmål og Svar A3 udbud af almindelig rutekørsel Spørgsmål og Svar A3 udbud af almindelig rutekørsel 4. december 2008 På enhed 7 (Hurtigbussen 555/666) er der ikke virksomhedsoverdragelse af personale - ej heller chauffører. Se passagertal for Hurtigbussen

Læs mere

Køreplan for påskestævnet 2011

Køreplan for påskestævnet 2011 Køreplan for påskestævnet 2011 Der køres i fast rutefart mellem hallerne, med primært udgangspunkt/skiftested i Aabybro hvor busserne holder uden for Aabybro Hallen på Jens Møllersvej Alle busser er mærket

Læs mere

Introduktion til programmering

Introduktion til programmering Introduktion til programmering Databaser Uge 38 L. Ingemann: SQL databaser på nettet, kap 2-4. Kompendium L. Ingemann: SQL databaser på nettet, kap 6-20, Kompendium Sidste gang Databaser Relationelle databaser

Læs mere

Anden undervisningsgang. Database

Anden undervisningsgang. Database Anden undervisningsgang Database Denne undervisningsgang Lektier fra sidst Forskellige database systemer Den relationelle model Normalformer uddybet Mere end CRUD Nøgler låser data op Forbind data til

Læs mere

Eksamen, DSDS, efterår 2008

Eksamen, DSDS, efterår 2008 Eksamen, DSDS, efterår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 6. januar 2009 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.

Læs mere

Databasesystemer, forår 2006 IT Universitetet i København. Forelæsning 3: E-R modellering. 16. februar 2006. Forelæser: Rasmus Pagh

Databasesystemer, forår 2006 IT Universitetet i København. Forelæsning 3: E-R modellering. 16. februar 2006. Forelæser: Rasmus Pagh Databasesystemer, forår 2006 IT Universitetet i København Forelæsning 3: E-R modellering 16. februar 2006 Forelæser: Rasmus Pagh Forelæsningen i dag Datamodellering hvad, hvorfor og hvordan? Business rules

Læs mere

Notat Business case Rute 161-163 Odense - Ferritslev - Ørbæk - Svendborg

Notat Business case Rute 161-163 Odense - Ferritslev - Ørbæk - Svendborg FynBus 9. november 2009 PLAN SAZ/SJ Notat Business case Rute 161-163 Odense - Ferritslev - Ørbæk - Svendborg Region Syddanmark har den 28-09-09 vedtaget principperne for den fremtidige kollektive trafik

Læs mere

3. rettelsesblad vedr. 32. udbud Ruter i Skanderborg og Odder Kommune 2011

3. rettelsesblad vedr. 32. udbud Ruter i Skanderborg og Odder Kommune 2011 3. rettelsesblad vedr. 32. udbud Ruter i Skanderborg og Odder Kommune 2011 13. december 2011 De med gråt markerede spørgsmål/svar var med i 1. og 2. rettelsesblad. Spørgsmål / Fejl 1. Bilag D for B-kontrakter

Læs mere

CLmul-b14e Gruppe 2 2. Database projekt

CLmul-b14e Gruppe 2 2. Database projekt 1 2 CLmul-b14e Gruppe 2 2. Database projekt JONAS FALK sniller27@hotmail.com Projekt vejledere Ivan Rosenvinge Frederiksen CHRISTIAN BRAMS halkjaer-brams@hotmail.com Tue Becher LINE RASMUSSEN line-rasmussen@live.com

Læs mere

PROTOKOLLAT. med tilkendegivelse af 27. februar faglig voldgiftssag (FV ): Fagligt Fælles Forbund. (advokat Evelyn Jørgensen) mod

PROTOKOLLAT. med tilkendegivelse af 27. februar faglig voldgiftssag (FV ): Fagligt Fælles Forbund. (advokat Evelyn Jørgensen) mod PROTOKOLLAT med tilkendegivelse af 27. februar 2018 i faglig voldgiftssag (FV2016.0049): Fagligt Fælles Forbund (advokat Evelyn Jørgensen) mod DI Overenskomst I for Arriva Danmark A/S (advokat Sussi Skovgaard-Holm)

Læs mere

DEN GODE MODEL: OPSAMLING PÅ MODELLERINGSOPGAVER OG INTRO TIL MODELLERINGSALTERNATIVER

DEN GODE MODEL: OPSAMLING PÅ MODELLERINGSOPGAVER OG INTRO TIL MODELLERINGSALTERNATIVER DEN GODE MODEL: OPSAMLING PÅ MODELLERINGSOPGAVER OG INTRO TIL MODELLERINGSALTERNATIVER KIRSTINE ROSENBECK GØEG Tema Titel Materiale 1 IS i sundhedssektoren Patientdatas anvendelighed Lynge et al. 2 Registrering

Læs mere

Identifikation af planer der ikke findes i PlansystemDK vha. datasættet... 9

Identifikation af planer der ikke findes i PlansystemDK vha. datasættet... 9 Vejledning i brug af Tingbogsudtrækket Version 1.0 af 1. juli 2009 Indhold Indledning... 1 Planer i Tingbogen... 2 Planer i PlansystemDK... 3 Sammenhæng mellem Tingbogen og PlansystemDK... 3 Datastruktur...

Læs mere

Eksamen 2013. Uden hjælpemidler - normeret til 60 minutter

Eksamen 2013. Uden hjælpemidler - normeret til 60 minutter ksamen 2013 Uden hjælpemidler - normeret til 60 minutter 1 er-diagram 1 /R iagram til relationelle model xported at: Mon May 13 2013 22:43:32 GMT+0200 (ST) Untitled etragt Page figur 1. Hvordan oversættes

Læs mere

CCS klassifikation og identifikation

CCS klassifikation og identifikation UDVEKSLINGSSPECIFIKATION klassifikation og identifikation Udgivet 01.09.2017 Revision 0 Molio 2017 s 1 af 19 Forord Denne udvekslingsspecifikation beskriver, hvilke egenskaber for klassifikation og identifikation,

Læs mere

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen. Copenhagen Business Academy Multimediedesigner 3. semester - 1. projekt, september 2014 Gruppe 1 - MulA Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen. Study: Multimedia Design Project:

Læs mere

Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium

Deskriptiv statistik. Version 2.1. Noterne er et supplement til Vejen til matematik AB1. Henrik S. Hansen, Sct. Knuds Gymnasium Deskriptiv (beskrivende) statistik er den disciplin, der trækker de væsentligste oplysninger ud af et ofte uoverskueligt materiale. Det sker f.eks. ved at konstruere forskellige deskriptorer, d.v.s. regnestørrelser,

Læs mere

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2

Affine rum. a 1 u 1 + a 2 u 2 + a 3 u 3 = a 1 u 1 + (1 a 1 )( u 2 + a 3. + a 3. u 3 ) 1 a 1. Da a 2 Affine rum I denne note behandles kun rum over R. Alt kan imidlertid gennemføres på samme måde over C eller ethvert andet legeme. Et underrum U R n er karakteriseret ved at det er en delmængde som er lukket

Læs mere

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 3: E-R modellering. 17. februar 2005. Forelæser: Rasmus Pagh

Databasesystemer, forår 2005 IT Universitetet i København. Forelæsning 3: E-R modellering. 17. februar 2005. Forelæser: Rasmus Pagh Databasesystemer, forår 2005 IT Universitetet i København Forelæsning 3: E-R modellering 17. februar 2005 Forelæser: Rasmus Pagh Forelæsningen i dag Datamodellering hvad, hvornår, hvorfor og hvordan? Business

Læs mere

Regulære udtryk og endelige automater. Ugens emner

Regulære udtryk og endelige automater. Ugens emner Ugens emner Endelige automater [Martin, kap. 3.2-3.5] endelige automater og deres sprog skelnelighed produktkonstruktionen Java: dregaut.fa klassen automater til modellering og verifikation Regulære udtryk

Læs mere

DKAL Snitflader REST Register

DKAL Snitflader REST Register DKAL Snitflader REST Register 1 Indholdsfortegnelse A2.1 INTRODUKTION 3 A2.1.1 HENVISNINGER 3 A2.1.2 LÆSEVEJLEDNING 4 A2.1.2.1 SÅDAN LÆSES EN REST GRAF 4 A2.1.2.2 SÅDAN LÆSES EN RESSOURCE OG EN TYPE 4

Læs mere

Køreplan Djurs Sommerland. Gyldig fra 29. juni 2014-27. juni 2015 DIREKTE BUSRUTE DJURSBILLETTEN: BUS OG ENTRÉ MED RABAT DJUR SOMME LAND

Køreplan Djurs Sommerland. Gyldig fra 29. juni 2014-27. juni 2015 DIREKTE BUSRUTE DJURSBILLETTEN: BUS OG ENTRÉ MED RABAT DJUR SOMME LAND Køreplan Djurs Sommerland Gyldig fra 29. juni 2014-27. juni 2015 DIREKTE BUSRUTE DJURSBILLETTEN: BUS OG ENTRÉ MED RABAT DJUR SOMME LAND 1 Composedato: 11.04.2014 Kl. 10.57 2 3 TURE TIL DJURS SOMMERLAND

Læs mere