TDDI 60 Tekniska databaser

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

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

TDDI60 Tekniska databaser

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

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

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

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

TENTAMEN TDDD12 Databasteknik 7 januari 2010, 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 För kursen. Databasteknik. Ansvarig för tentamen: Anna Palmquist. Förfrågningar: Anslås inom 3 veckor

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

Konceptuella datamodeller

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

Logisk databasdesign

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

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

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

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

Databasteori. Övningar

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

Databaser Design och programmering

Databasteori Övningar

TDDD12 och TDDD46 Databasteknik. Lena Strömbäck

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

NORMALISERING. Mahmud Al Hakim

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

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

Skriftlig tentamen i kurserna TDDD12 och TDDB48 Databasteknik kl

Databasteknik för D1, SDU1 m fl

Databasteknik för D1, SDU1 m fl

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

Tentamen DATABASTEKNIK - 1DL116

Exempel-Tentamen III

Lösningar till tentamen i EDAF75

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

Universitetet: ER-diagram

Tentamen plus lösningsförslag

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

Kursens mål. Databasteknik TDDB48. Lärare. Kursorganisation. Laborationsinformation. Inlämning av laborationer. Responsible:

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

Tentamen. Databasmetodik Lördag 27 september 2014 kl

Tentamen för DD1370 Databasteknik och informationssystem

Karlstads Universitet, Datavetenskap 1

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

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen för DD1370 Databasteknik och informationssystem

LUNDS UNIVERSITET KURSPLAN INFC20 Ekonomihögskolan Institutionen för Informatik INFC20 7,5. Grundnivå / Basic level G2F. Engelska / English

Tentamen för DD1370 Databasteknik och informationssystem

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

Tentamen DATABASTEKNIK - 1DL116, 1MB025

Inga hjälpmedel är tillåtna

ER-Diagram. Databasutveckling Diagram

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

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

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

Databasdesign. E-R-modellen

Webprogrammering och databaser. Konceptuell datamodellering med ER-modellen

Tentamen för DD1370 Databasteknik och informationssystem

Tentamen i Databasteknik

Databasteori Övningar

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

Tentamen. TDDB38 - Databasteknik

Exempel tentamen. Skriv bara på en sida av pappret Skriv namn på varje papper Skriv läsligt, annars rättas inte tentamen Alla hjälpmedel är tillåtna

Funktionella beroenden - teori

Föreläsning 6: Normalisering & funktionella beroenden

Relationell databasdesign

Tentamen i Grundläggande programmering STS, åk 1 fredag

Tentamen i. Databasteknik

Databaser design och programmering. Design processen ER- modellering

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

Tentamen i Databasteknik

Karlstads Universitet, Datavetenskap 1

Databasteori. Övningar

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

Tentamen Datastrukturer för D2 DAT 035

Mitthögskolan ITM Telefon Access. Laborationskompendium för grunderna i databasen Microsoft Access. Detta exemplar tillhör:

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

Tentamen för DD1370 Databasteknik och informationssystem

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

Algebra och Diskret Matematik A (svenska)

Lösningsförslag Tentamen, 25 april 03

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

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

Tentamen för 1E1601. Måndag 10 mars 2003, kl Alla hjälpmedel tillåtna

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

Tentamen i Linjär algebra, HF1904 exempel 3 Datum: xxxxxx Skrivtid: 4 timmar Examinator: Armin Halilovic

INFC20, Informatik: Avancerade databassystem, 7,5 högskolepoäng Informatics: Advanced Database Systems, 7.5 credits Grundnivå / First Cycle

TENTAMEN DATABASKUNSKAP ITEK12

Del 2: ER-modellering och överföring till Databasstruktur v0.9

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

Uppgift 1. (3p) a) Bestäm definitionsmängden till funktionen f ( x) c) Bestäm inversen till funktionen h ( x)

Modul DB1-1 Databasmodellering

Transkript:

Lena Strömbäck 2004-08-19 Skriftlig tentamen i kursen TDDI 60 Tekniska databaser Datum: 2004-08-19 Tid: 14-18 Lokal: TER1 Hjälpmedel: Engelsk ordlista tillåten ej elektronisk Miniräknare ej programmerbar Poängränser: Tentamen består av två delar Den praktiska delen kräver 10 poäng för godkänt Den teoretiska delen kräver 10 poäng för godkänt För betyg 4 krävs ungefär 28 poäng För betyg 5 krävs ungefär 36 poäng Resultat annonseras inom två veckor. Jourhavande lärare: Lena Strömbäck, 0709-39 6776, 013-16 46 99, 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 I den praktiska delen kommer ni bland annat att modellera ett problem i uppgift 1. Denna modell ska sedan ligga till grund för de svar ni ska ge i uppgift 2. Uppgift 1 (6 p): Datamodellering med EER diagram En liten samfällighet vid havet äger en båthamn för medlemmarnas båtar. Samfälligheten tar ut en årlig avgift för båtplatsen. Hjälp ordföranden att skapa en passande databas. 1 2 3 4 5 6 7 8 9 Sail boats 101112131415161718 19 20 21 22 23 24 25 26 27 28 29 30 Motor boats Water 1 3 5 7 2 4 6 Properties 8 Figure 1: Hamnplatser för motor- och segelbåtar i vattnet och tomter Varje tomt i samfälligheten identifieras av ett tomtnummer och beskrivs vidare genom dess adress. Databasen innehåller alla tomtägare (dvs. en tomt kan ägas av fler än en person). Dessutom måste det finnas en ekonomiskt ansvarig person ( betalare ) per tomt som betalar samfällighetens avgifter. Betalaren behöver inte vara identisk med ägaren (betalaren kan ha hyrt tomten). Alla dessa relevanta personer ska finnas i databasen med fullständigt namn och telefonnummer. Det ska vara möjligt att spåra gamla ägare (dvs. en databasfråga som vem ägde tomt 3 år 1954? ska vara möjlig). Till varje tomt hör maximalt två båtar. Varje båt hör till en hamnplats i hamnen. Hamnplatserna är markerade med små nummerskyltar som är spikade på bryggan (se bilden). Det finns hamnplatser för motorbåtar och segelbåtar. Årskostnaden för en hamnplats beror på dess typ: segelbåtplats eller motorbåtplats. Kostnaden för motorbåtsplatsen bestäms också av motorbåtens motoreffekt (antalet hästkrafter). Varje hamnplats och varje båt finns i databasen med respektive längd, bredd och djup för att tilldela och omfördela hamnplatser och båtar på ett enkelt sätt. Databasdesignen ska tvinga fram att alla båtar får rätt hamnplats (att motorbåtar hamnar på motorbåtsplatser och segelbåtar på segelbåtsplatser).förutom ägarförhållandet för tomtar finns inga historiska data i databasen. Du behöver inte modellera för databasfrågor som vilken hamnplats ägdes av hus 3 år 1960? ). Rita ett EER diagram som modellerar ovanstående mini-värld.

Uppgift 2 (4p): Översätt EER diagrammet från uppgift 1 till tabeller i BCNF. Förklara hur översättningen gjorts och om du väljer att göra någonting annorlunda än som beskrivs i boken måste detta motiveras. Kom ihåg att det inte bara är ditt slutliga relationsschema utan också dina antaganden och motiveringar som avgör bedömningen av ditt resultat. Vi kommer att utgår från din lösning av uppgift 1, det är alltså viktigt att ditt relationsschema är en översättning av din lösning av uppgift 1. Uppgift 3 (6p): SQL En databas innehåller information om böcker, förlag och författare. Attributen AuthOrder i wrote-tabellen anger vem som är första, andra, tredje, etc. författaren till en bok. Publisher PubID PubName 1 Addison-Wesley 2 Wiley Book BookID BookTitle BookPrice PublisherID 101 Fundamentals of Database 95.00 1 Systems 102 Building Secure Software 54.99 1 103 Securing Java 34.99 2 Author AuthorID AuthorName 2004 Elmasri, Ramez 2005 Navathe, Shamkant 2006 Viega, John 2007 McGraw, Gary 2008 Felten, Ed Wrote BookID AuthorID AuthOrder 101 2004 1 101 2005 2 102 2006 1 102 2007 2 103 2007 1 103 2008 2

a) Lista all böcker (och deras priser) som kostar mer än $40. (1p) Fundamentals of Database Systems 95.00 Building Secure Software 54.99 b) Lista alla titlar och deras förlag sorterade efter förlagsnamn och titel. (1p) Addison-Wesley Building Secure Software Addison-Wesley Fundamentals of Database Systems Wiley Securing Java c) Ange genomsnittspriset per förlag. (2p) Addison-Wesley 74.995 Wiley 34.99 d) Vilken första författare har skrivit den dyraste boken? Ange inte medförfattare. (2p) Elmasri, Ramez Uppgift 4 (4p): Normalisering. Kustklubben hyr ut båtplatser till sina medlemmar. För att hålla koll på vilka platser som är uthyrda och att alla har en plats lagom för sin båt föreslår de följande databas. (Varje brygga har bara platser av en viss storlek.) Medlemsnr Namn BåtID Båtplats Brygga Platsbredd Förutom de beroenden som ges av primärnyckeln har vi också: Medlemsnr Æ Namn Båtplats Æ Brygga Brygga Æ Platsbredd a) Vilken normalform är tabellen i? Motivera! (1p) b) Normalisera tabellen till BCNF. Var noga med att redovisa alla steg i normaliseringsprocessen. (3p)

Uppgift 5 (6p): Datastrukturer Del 2: Teoretisk Vi har en tabell med 10 000 rader bestående av tre attribut: Personnummer (10 byte), Namn (20 byte) och Telefonnummer (10 byte). Personnummer är primärnyckel i tabellen, namn är unika för varje person men flera personer kan ha samma telefonnummer. Tabellen är lagrad sorterat efter personnummer. Vi vill kunna göra snabb sökning på alla attribut. Visa vilken typ av index som kan skapas och hur dessa ser ut på för var och ett av de tre attributen. För full poäng ska dina förslag på index vara så effektiva som möjligt, motivera dina val av indextyp. (Blockstorlek 200 byte.) Uppgift 6 (7p): Relationsmodellen och relationsalgebra a) I tabellen i uppgift 5 vill vi hitta namn på alla personer som har samma telefonnummer som Pelle Pettersson. Skriv frågan i relationsalgebra. (2p) b) Vad är skillnaden mellan yttre och inre join? Förklara och ge ett exempel. (2p) c) Vad är primärnyckel, kandidatnyckel och supernyckel. Förklara och ge exempel från tabellen i uppgift 5. (3p) Uppgift 7 (5p): Databasåterställning Studera följande transaktionsschema. T1 Read-item(other-account); other-account := other-account + 2000; Write-item(other-account); Read-item(my-account); T2 Read-item(my-account); my-account := my-account + 1000; Write-item(my-account); Commit; my-account := my-account + 2000; Write-item(my-account); Commit; a) Är schemat återställningsbart respektive strikt? Motivera! (2p) b) Hur påverkar dessa båda egenskaper databasåterställningen? Visa vad som händer om transaktionen T2 skulle göra Rollback i stället för commit och diskutera hur detta påverkar återställningen av databasen. (3p) Uppgift 9 (2p): Förklara följande begrepp: a) Deadlock c) Rotational delay