TDDI60 Tekniska databaser

Relevanta dokument
TDDI 60 Tekniska databaser

An English version of the questions is found at the back of each page.

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

TENTAMEN. TDDD12 Databasteknik TDDD46 Databasteknik. 16 augusti 2010, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 15 mars 2002, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 12 juni 2007, kl 14-18

TENTAMEN TDDB77 Databaser och Bioinformatik 19 april 2002, kl 14-18

Tentamen ISGB01 (delkurs i ISGB24) Databasdesign 7,5 Poäng

Tentamen ISGB01, ISGB24. Databasdesign 7,5 Poäng

TENTAMEN TDDD12 Databasteknik 7 januari 2010, kl 14-18

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

Konceptuella datamodeller

TENTAMEN För kursen. Databasteknik. Ansvarig för tentamen: Anna Palmquist. Förfrågningar: Anslås inom 3 veckor

Databasteknik för D1, SDU1 m fl

TENTAMEN TDDB77 Databaser och Bioinformatik 24 april 2004, kl 14-18

Databaser Design och programmering

TENTAMEN TDDB77 Databaser och Bioinformatik 22 augusti 2006, kl 14-18

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

Grunderna för relationsmodellen!

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

TENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12

Programdesign, databasdesign. Databaser - Design och programmering. Funktioner. Relationsmodellen. Relation = generaliserad funktion.

Tentamen. TDDB38 - Databasteknik

Databaser - Design och programmering. Relationsmodellen. Relationer - som tabeller. Relationer som tabeller. Alternativa notationer: Relationsschema

TER3. Försättsblad till skriftlig tentamen vid Linköpings universitet G28 TEN1 Webprogrammering och databaser Tentamen IDA 1 (7)

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

Tentamen plus lösningsförslag

Tentamen i Databasteknik

Idag. Databaskvalitet(??) Databaskvalitet... Databaskvalitet...

Tentamen DATABASTEKNIK - 1DL116

Tentamen i Databasteknik

Databasteknik för D1, SDU1 m fl

TENTAMEN. För kursen. Databasteknik. Ansvarig för tentamen: Cecilia Sönströd. Förfrågningar: Anslås inom 3 veckor

Tentamen. i Databasteknik. lördagen den 13 mars Tillåtna hjälpmedel: Allt upptänkligt material

Fillagring och indexering

Tentamen NDA01G Öppen för alla. Tentamenskod: Inga hjälpmedel är tillåtna

NORMALISERING. Mahmud Al Hakim

Universitetet: ER-diagram

Vad är en databas? Databaser. Relationsdatabas. Vad är en databashanterare? Vad du ska lära dig: Ordlista

Funktionella beroenden - teori

Viktigt! Glöm inte att skriva tentamenskod på alla blad du lämnar in.

Logisk databasdesign

Lösningsförslag, tentamen i Databaser

Tentamenskod: Tentamensdatum: Tid: 14:00-19:00. Inga hjälpmedel är tillåtna

Tentamen Databasteknik

Databasteori. Övningar

Utveckling av webbapplikationer med.net, DVA213 (1 av 5)

Inga hjälpmedel är tillåtna

Design och underhåll av databaser

Lösningar till tentamen i EDAF75

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Databaser design och programmering. Design processen ER- modellering

Databasdesign. E-R-modellen

Exempel-Tentamen III

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Viktigt! Glöm inte att skriva Tentamenskod på alla blad du lämnar in.

Databasteori Övningar

Lite om databasdesign och modellering

Normalisering. Christer Stuxberg Institutionen för Informatik och Media

Databaser och Datamodellering Foreläsning IV

Relationell databasdesign

Concepts learned this far. ER till relationer. ER till relationer. ER till relationer. TDDD12 Database Technology

Tentamen DATABASTEKNIK - 1DL116, 1MB025

ÖVERVAKNING AV SQL SERVER

Databaskunskap 7,5 högskolepoäng Provmoment: Ladokkod: Tentamen ges för:

Normalisering. Varför? För att åstadkomma en så bra struktur i databasen som möjligt med minimalt med dubbellagrad info.

Databaser design och programmering. Fö 2: Design processen, ER-modellering

Underkänt 0-29oäng Godkänt poäng Väl godkänt poäng

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Tentamen i. Databasteknik

2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY!, där RIDKURS.KursId = KURS.KursId 3NF Hästnamn, Art, NY! NY! NY! NY!

Forskningsmetoder i offentlig förvaltning

Mål med lektionen! Veta kursmålen. Ha kännedom om några av de grundläggande begreppen.

Tentamen 2I1033, IT i Organisationer och Databasteknik lördag 17/4 2004, kl LÖSNINGSFÖRSLAG

Ladok. Tillgodoräknande av kurs RS21. Allmänt om funktionen Arbetsgång Tillgodoräknande av hel kurs Arbetsgång Internationellt utbyte 4

Provmoment: Omtentamen 1 (dvs salstentamen 2) för kursen under LP4, TS1A, 21TS1U (VT14P4) Tentamen ges för: För fastighetsmäklare (FM12)

Inst. för Data- och Systemvetenskap SU Maria Bergholtz. Tentamen. 21/ kl Inga hjälpmedel är tillåtna (annat än ordbok).

Programmering C: Tentamen of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator

Tentamen i Databasteknik

ÖVNING 10 2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY! 3NF Hästnamn, Art, NY! NY! NY! NY! KursId, StartDatum, SlutDatum KursId NY!

TDDC74 Programmering, abstraktion och modellering. Tentamen

Tentamen Databasmetodik DB:DSK/FK/DVK/ATD/SP/EIT mfl. äldre kurstillfällen 8 augusti 2013 kl. 9-13

Karlstads Universitet, Datavetenskap 1

Föreläsning 6: Normalisering & funktionella beroenden

Tentamen 4,5 hp Delkurs: Databaser och databasdesign 7,5hp Tentander: VIP2, MMD2, INF 31-60, ASP

Datorarkitektur I. Tentamen Lördag 10 April Ekonomikum, B:154, klockan 09:00 14:00. Följande gäller: Skrivningstid: Fråga

ÖVNING 10 2NF Hästnamn, KursId, StartDatum, SlutDatum KursId NY! 3NF Hästnamn, Art, NY! NY! NY! NY! KursId, StartDatum, SlutDatum KursId NY!

Uppdelning. Relationell databasdesign, FB Teori Låt R vara ett relationsschema. R 1, R 2,..., R n är en uppdelning av

Frågor att lösa med SQL mot databasen kursdb_sql Sida 1 av 5

Tentamensinstruktioner

Pga att (Nummer och Typ) tillsammans bestämmer övriga attribut funktionellt väljer vi (Nummer, Typ) till primärnyckel:

Tentamensinstruktioner

Uppgift 1. (a) Ange tre orsaker hur felaktigheter i en databas kan uppsta. Till varje av dem, ange en lamplig metod som anvands som atgard mot dessa.

Transkript:

Lena Strömbäck 2006-10-13 Skriftlig tentamen i kursen TDDI60 Tekniska databaser Datum: 2006-10-13 Tid: 8-12 Lokal: T2, U3 Hjälpmedel: Engelsk ordlista tillåten ej elektronisk Poängränser: Tentamen består av två delar För betyg 3 krävs 15 poäng För betyg 4 krävs ungefär 21 poäng För betyg 5 krävs ungefär 27 poäng Resultat annonseras inom två veckor. Jourhavande lärare: Lena Strömbäck, 0709-39 6776, 013-28 23 24 An English version of the questions is found at the back of each page. Använd ett papper för varje fråga även om du bara skriver en rad på det. Skriv namn och personnummer på varje blad. Skriv bara på ena sidan av papperet. Ge relevanta svar på frågorna. Poängavdrag kan ges för svar som inte är direkta svar på frågan.

Del 1: Praktisk 1. EER-modellering, EER-> relationer (10p) Nedanstående EER-diagram är en bas för att hantera information om anställda och studenter på ett universitet. birthdate name telephone address Person ID d study program Employee Student Grade department m m teaches has finished n code Course n name a) Förklara kortfattat alla möjligheter för att översätta ärvningsrelationerna i diagrammet till relationer. (2 p) b) Vilket av sätten är bäst här? Motivera? (1 p) c) Översätt diagrammet till relationer. För full poäng glöm ej att markera primärnycklar och främmande nycklar. (2 p) d) Universitetet börjar anställa studenter som hjälper till med undervisningen. Varför kan dessa ej representeras i ovanstående modell? (1 p) e) Ändra diagrammet så att anställda studenter kan representeras. För anställda studenter är det viktigt att precis samma information som för en vanlig lärare respektive student. Dessutom vill vi representera hur många timmar de ska undervisa. (1 p) f) Universitetet måste lagra information om hur det går för varje student. Därför måste man lägga till följande information till EER modellen: (3 p) - När studenten startade på sitt program.. - Vilken termin studenten följer för närvarande. (Eftersom studenter ofta gör studieavbrott kan inte detta beräknas från när studenten startade.) - Länden (i ECTS poäng) för varje studieprogram. - Vilka kurser som är obligatoriska respektive valfria för varje termin på studieprogrammet. Notera att varje kurs kan finnas med i flera studieprogram och terminer. - Hur många ECTS-poäng som krävs för att få starta på en viss termin. Visa hur ovanstående diagram kan utökas och förändras för att lägga till ovanstående information. Om du gör ytterligare antaganden måste dessa redovisas.

3. SQL och PL/SQL (6 p) Antag att det finns en databas med nedanstående tre relationer. Nyckelattributen är understrukna. Produkt(tillverkare, modell, typ) Segel(modell, längd, bredd, vikt, segelyta, pris) Motor(model, längd, bredd, vikt, hästkrafter, pris) Produktrelationen listar tillverkaren, modellen och typen (antingen Segel eller Motor, vilket står för segelbåt och motorbåt) för olika produkter. Segelrelation ger modellen, d.v.s., segelbåt, längden (i meter), bredden (i meter), vikten (i kg), segelytan /mängd segelduk i kvadratmeter) och priset ( i SEK). Motorrelationen är liknande förutom att hästkrafter ersätter informationen om segelyta. Några exempeldata visas nedan. Produkt: tillverkare modell typ Dufour tallship sailboat Dufour speedboat motorboat Dufour yacht motorboat Swan clipper sailboat Swan dinghy sailboat Swan outboard motorboat Segel: modell längd bredd vikt segelyta pris tallship 40 8 100 000 3 600 30 000 000 clipper 134 17 6 000 18 600 750 000 dinghy 13 3 3 800 260 50 000 Motor: modell längd bredd vikt hästkrafter pris speedboat 8 2 2 000 725 80 000 yacht 71 14 1 700 3 000 1 000 000 outboard 4 1,5 50 15 14 000 Formulera följande frågor i SQL: a) Finn tillverkare av båtar (segelbåtar eller motorbåtar) som har lägst pris. Det kan finns flera båtar med lägsta pris. (1 p) b) Finns motorbåtsmodeller som har samma längd och bredd som segelbåtarna (1 p) c) För varje tillverkare, lista priset för den dyraste båten (segelbåten eller motorbåten) för respektive tillverkare. Returnera en tupel (m, p), där p är priset på den dyraste båten som görs av tillverkaren m. (2 p) d) Skriv en trigger för följande fall: När man ska uppdatera priset för en segelbåt, kontrollera att det inte finns en segelbåt med lägre pris och med samma segelyta. Kontrollera också att det inte tillåts ändring av tupeln, eller ogår ändringen om den inte uppfyller restriktionerna. (2 p)

3. Normalisering (4 p) Tabellen nedan listar mötestider för sångpedagoger och korister. En korist (körsångare) ges en mötestid vid ett speciellt klockslag och datum med en sångpedagog, lokaliserad i ett specifikt musikrum. Under en dag med sånglektioner (mötestider) så ges en sångpedagog ett specifikt musikrum för den dagen. a) Vid uppdatering så kommer tabellen nedan ge problem. Ge ett exempel på en anomali som kan uppstå när man gör antingen en insättning, borttagning eller updpatering av en tupel. (1 p) b) Normalisera tabellen. Visa varje steg från 1NF, via 2NF och 3NF, till BCNF. Lista de funktionella beroendena i varje relation som du skapar. Ange tydligt vilka antaganden du gör om datat i relationerna. (3 p) anstid sångpedagognamn koristid koristnamn mötestid musikrumid datum tid S1011 Andrea Bocelli C100 Johan Glans 2006-10-10 10.00 L15 S1011 Andre Bocelli C105 Lisa Nilsson 2006-10-10 12.00 L15 S1024 Matti Salminen C108 Mark Levengood 2006-10-10 10.00 L10 S1024 Matti Salminen C108 Mark Levengood 2006-10-12 14.00 L10 S1032 Helena Eriksson C105 Lisa Nilsson 2006-10-12 16.30 L15 S1032 Helena Eriksson C110 Filip Hammar 2006-10-13 18.00 L13 4. Databasteori (3 p) Avgör om nedanstående påståenden är sanna eller falska. Du får ½ poäng för varje korrekt svar. Om du ger ett felaktigt svar blir det i stället ½ poängs avdrag. (Avstår du från att svara får du 0 poäng.) Minimalt 0 poäng på hela uppgiften. Påståendena refererar till nedanstående tabell: Id Namn Familj Telefon Bra vän 1 Stina Karlssons 013-111111 - 2 Kalle Karlssons 013-111111 + 3 Anna Anderssons 0707-070707 a. Id är kandidatnyckel i tabellen b. Namn + Familj är en kandidatnyckel även om det finns flera vänner med samma namn. c. Telefonnummer är en kandidatnyckel till tabellen d. Id är en supernyckel i tabellen. e. Id + Namn är en supernyckel i tabellen f. Telefon + Familj är en supernyckel i tabellen

5. Transaktioner (4 p) Vad är transaktioner och varför är de viktiga i databassammanhang? I din förklaring ska du använda dig av och förklara följande termer: a. Transaktion b. Atomära operationer c. Commit d. Rollback 6. Index (3 p) Antag att vi har en fil sorterad på nyckelfältet. Filen har 15000 poster med storleken 150 bytes. Blockstorleken är 512 bytes (unspanned allokering). Nyckelfältet är 10 bytes, blockpekare och postpekare är båda 40 bytes. a. Hur många block behövs för att lagra filen? (1 p) b. Databasdesignern vill skapa ett index på nyckelfältet. Vilken typ av index är lämpligt? Gör en skiss på indexet och beräkna hur många block som behövs för det. (2 p)