Lösningsförslag till tentamen för 1E1601 måndag 10 mars 2003
Lösningsförslag till tentamen för 1E1601 10 mars 2003 Sid 1 av 3 1. a. Antaganden: i. Varje film har ett eget beställningsnummer så att det inte behövs speciell information om huruvida filmen är en VHS- eller DVD-film. Finns filmen i båda formaten har dessa olika beställningsnummer. ii. För att ett köp skall vara giltigt måste all informaton utom kreditkort ha angivits. Motsvaras av sambandsklassen delköp i modellen. iii. För att köp skall kunna slutföras måste alla uppgifter finnas (köpet skall vara giltigt se föregående punkt och kreditkort skall ha angivits). Då krävs två olika strukturer för att kunna hålla reda på gilitga respektive slutförda köp. Motsvaras av sambandsklassen köp. iv. För att hålla reda på status enligt uppgiftlydelsen räcker det att köpet har ett fält som kallas status och kan anta något av ett antal textuella värden som godtyckligt bestäms av leverantören. v. Eftersom adresser inte är unika annat än med angivande av både gatuadress och postort eller gatuadress och postnummer har jag infört en extra id för adresser. En annan möjlighet hade varit att bryta isär gatuadresserna och postorterna. Telnr tel postnr telnr Pnr namn adrid Kreditkort kkort Kund ladr Levadress kortnr gatuadress postort Köp Datum Delköp Status datum typ filmnr Typ ftyp Film Titel
Sid 2 av 3 Lösningsförslag till tentamen för 1E1601 10 mars 2003 b. Enligt kokboken Regel 1: Kund (Pnr, Namn) Levadress (AdrID, Gatuadress, Postnr, Postort) Film (Filmnr, Titel) Regel 2: Telnr (Telnr) Kreditkort (Kortnr) Datum försvinner Regel 3: Köp (Pnr, Datum, AdrID, Telnr, Filmnr, Kortnr, Status) Delköp (Pnr, Datum, AdrID, Telnr, Filmnr) Regel 4: LAdr (Pnr, AdrID) FTyp (Typ, Filmnr) Regel 5: Telnr (Telnr, Pnr) Kreditkort (Kortnr, Pnr) Regel 6: ger ingenting Slutligen: Kund (Pnr, Namn) Levadress (AdrID, Gatuadress, Postnr, Postort) Film (Filmnr, Titel) Köp (Pnr, Datum, AdrID, Telnr, Filmnr, Kortnr, Status) Delköp (Pnr, Datum, AdrID, Telnr, Filmnr) LAdr (Pnr, AdrID) FTyp (Typ, Filmnr) Telnr (Telnr, Pnr) Kreditkort (Kortnr, Pnr) 2. a. Man får insättningsproblem. T.ex. kan man inte lagra information om en ny film utan att ha planerat visning på åtminstone en biograf. Man får borttagningsproblem. Man kan, om man bara har (har haft) visning av en film på en viss biograf, inte ta bort information om filmen utan att förlora information om biografen. Man får uppdateringsproblem. Om man skall byta adress på en biograf tvingas man gå igenom varje rad i registret för att vara säker på att ha genomfört en uppdatering på rätt sätt. b. filmno filmnamn biografkod biografnamn, biografadr, biografort, chefsno biografort invånarantal chefsno chefsnamn filmno, biografkod visningsdat, leveransdat, återdat
Lösningsförslag till tentamen för 1E1601 10 mars 2003 Sid 3 av 3 c. 1NF: {filmno} + = {filmno, filmnamn} {biografkod} + = {biografkod, biografnamn, biografadr, biografort, chefsno, invånarantal, chefsnamn} {biografort} + = {biografort, invånarantal} {chefsno} + = {chefsno, chefsnamn} {filmno, biografkod} + = {filmno, biografkod, filmnamn, biografnamn, biografadr, biografort, chefsno, invånarantal, chefsnamn, visningsdat, leveransdat, återdat} Det visar sig när man räknar på de transitiva höljena att filmno, biokod är den enda kandidatnyckeln och vi få då 1NF med (filmno, biografkod, filmnamn, biografnamn, biografadr, biografort, chefsno, invånarantal, chefsnamn, visningsdat, leveransdat, återdat) 2NF: Endast visningsdat, leveransdat, återdat beror av hela nyckeln och därför bryter jag ut höljena till delarna, d.v.s. {filmno} + och {biografkod} + och får då Film (filmno, filmnamn) Biograf (biografkod,, biografnamn, biografadr, biografort, chefsno, invånarantal, chefsnamn) Visning (filmno, biografkod, visningsdat, leveransdat, återdat) 3NF: Biograf innehåller två transitiva beroenden som gör att jag bryter ut {biografort} + och {chefsno} + och jag får då: Film (filmno, filmnamn) Biograf (biografkod,, biografnamn, biografadr, biografort, chefsno) Ort (biografort, invånarantal) Chef (chefsno, chefsnamn) Visning (filmno, biografkod, visningsdat, leveransdat, återdat) 3. a. Vilka avdelningar finns på samma våning som och våningarna ovanför den avdelning som har minst antal anställda? b. Vilka företag levererar något till varje avdelning på 3:e våningen? c. På vilka våningar finns avdelningar som bara har en vara till försäljning? d. Vilken chef (vilka chefer) på tredje våningen har högst lön? e. Vilka varutyper finns i lager endast på 3:e våningen? f. Vilka varutyper finns till försäljning på både 3:e och 4:e våningen?