Databasteknik
för D1, SDU1 m fl
onsdag 17 augusti 2011
Gäller som tentamen för:
DT1012 Datateknik A, Databasteknik, provkod 0100
DT1007 Datateknik A, Tillämpad datavetenskap, provkod 0310
Hjälpmedel: | Inga hjälpmedel. |
Poängkrav: |
Maximal poäng är 37.
För betyget 3 respektive G krävs 18 poäng. |
Resultat och lösningar: | Meddelas på kursens hemsida eller via e-post senast onsdag 7 september 2011. |
Återlämning av tentor: | Efter att resultatet meddelats kan tentorna hämtas på universitetets centrala tentamensutlämning. |
Examinator och jourhavande: | Thomas Padron-McCarthy, telefon 070 - 73 47 013. |
ER- och EER-diagram kan ritas på flera olika sätt. Om du använder en annan notation än kursboken, måste du förklara den notation som du använder.
Du behöver inte skriva create table-kommandon i SQL, men du ska ange vilka relationer som finns och vilka attribut varje relation innehåller. Ange också alla kandidatnycklar, vilken av dessa som är primärnyckel, samt vilka referensattribut som finns och vad de refererar till.
Implementationen ska vara bra.
a) (1p) Vilka vägar är mellan 100 och 150 km långa? Vi vill veta de vägarnas nummer.
b) (2p) Vilka vägar leder till Rom? Vi vill veta de vägarnas nummer.
c) (2p) Hur många rutter utgår från Arboga?
d) (2p) Finns det orter som inte går att nå (via en väg)? Vad heter de i så fall?
e) (3p) Vilken rutt är längst, i kilometer räknat?
Definiera gärna vyer om det underlättar frågorna.
a) (2p) Spekulera lite om hur XML-filens format kan se ut.
b) (1p) Vi tar XML-filen och lägger i stället in dess orter, vägar med mera i en relationsdatabas, med ett schema i stil med det som gavs i scenariot ovan. Ungefär hur mycket plats kommer den relationsdatabasen att ta på disken? Motivera svaret!
b) Hur skulle man kunna ha nytta av transaktioner i vägdatabasen ovan? Ge exempel! Ange i exemplen särskilt vad är det för problem man undviker genom att använda transaktioner.
Det finns böcker, och varje bok har ett unikt nummer och en titel. En bok kan antingen vara en roman, en fackbok eller en sagobok. Fackböcker har ett ämne och sagoböcker har en åldersgräns.
Det finns läsare, och varje läsare har ett unikt nummer och ett namn. En läsare kan antingen vara en vuxen eller ett barn. Vuxna har ett yrke.
Man ska också kunna lagra vilka böcker läsarna har läst. (Varje bok kan läsas av flera läsare, och varje läsare kan läsa flera böcker.) Vuxna kan läsa alla böcker, men barn kan bara läsa sagoböcker.
a) (2p) Rita ett EER-diagram för den beskrivna databasen.
b) (3p) Översätt EER-diagrammet till tabeller. Du behöver inte skriva create table-kommandon i SQL, men du ska ange vilka relationer som finns och vilka attribut varje relation innehåller. Ange också alla kandidatnycklar, vilken av dessa som är primärnyckel, samt vilka referensattribut som finns och vad de refererar till.