Databasteknik: Teoriövning 1, om grunder och ER-diagram

Välj själv om du vill göra övningen ensam eller i någon typ av grupp. Det gör inget om en del av frågorna skulle vara svåra att svara på, för de är kanske avsedda att inleda en diskussion snarare än att ha ett enda rätt svar.

Förberedelser

Innan denna övning bör du ha tittat på de två första föreläsningarna på YouTube (uppdelade i fyra olika Youtube-videor). Man kan också läsa i kursboken eller motsvarande.

Uppgift 1

Med ordet databas brukar man mena: Vilka av dessa egenskaper är absoluta krav på en databas, vilka är viktiga, och vilka är mest något som man gärna vill att den ska uppfylla? Diskutera!

Uppgift 2

Vi ska skapa en databas för att lagra data om maskar, äpplen och träd.

Maskar bor i äpplen som växer på träd. Varje mask bor i ett äpple, och det finns inga hemlösa maskar. Varje äpple växer på ett träd, och det finns inga lösa äpplen. En mask har ett unikt nummer, ett (inte nödvändigtvis unikt) namn och en längd som mäts i centimeter. Även träd och äpplen har unika nummer. Dessutom har varje äpple en färg, och varje träd har en höjd som mäts i meter.

Rita ett ER-diagram för databasen! Använd grunderna. Det behövs varken arv eller svaga entitetstyper.

Uppgift 3

Det finns nog väldigt många äpplen, och säkert många träd också. Sambandet att äpplena växer på träden, är inte det ett många-till-många-samband då?

Uppgift 4

Varje jul ska Jultomten distribuera flera miljarder julklappar till flera hundra miljoner barn. För att allt ska bli rätt måste Jultomten och hans nissar hålla reda på stora mängder information. De måste till exempel hålla reda på vilka barn som finns och var de bor, om de varit snälla eller elaka, och vilka presenter de önskat sig. Tidigare har det gått bra med papper och pärmar, men förra året blev mängden papper så stor att hela arkivavdelningen sjönk genom isen vid Nordpolen, där tomten ju bor. Därför har Jultomten bestämt sig för att datorisera julklappsadministrationen med hjälp av en databas.

Jultomten berättar att han vill ha med följande saker i databasen:

Rita ett ER-diagram för databasen! Använd grunderna. Det behövs varken arv eller svaga entitetstyper.

Finns det något i scenariot som är oklart, och som man skulle behöva fråga Jultomten om? Diskutera!

(Den här övningen finns också i kursboken.)

Förslag på lösningar

Det finns lösningsförslag till en del av uppgifterna, men försök lösa dem själv först.


Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se), 3 november 2022