English version of the materials are work in progress!

Expect bugs, typos, and other issues. The English version is expected to be completed during spring 2026.

Exercise: Practicing Transformation

This exercise contains a collection of various smaller exercises related to transforming ER diagrams into relational database schemas. Choose the exercises that interest you and do them.

Before doing this exercise, it is recommended that you first familiarize yourself with the following content:

Huomautus

Jos huomaat virheitä tai sinulla on kysyttävää tehtävistä, ota yhteyttä kurssin opettajiin

Exercise Scoring and Model Answers

In this exercise, you must score your answers yourself based on the model answer. Do the following:

  1. Do the exercise independently first. Familiarize yourself with the tasks of this part in peace. The purpose is to practice, so mistakes are allowed!

  2. When you think you have completed and saved the exercise, give yourself points by clicking the "Set custom points" selection above the task, entering your score (min. 0, max. 1) and pressing the confirm button:

    Example: Self-assessment of an exercise and viewing the model answer

    Give yourself points between 0-1 based on how well you think you completed the exercise. Even if you didn't get everything right, give yourself at least 0.01 for a good attempt 🙂

  3. You can now view the model answer by pressing the "Show model answer" button. When you open the model answer for the first time, you may see the following notification:

    You can press "OK" in this dialog, which marks the exercise as done.

  4. Familiarize yourself with the model answer. You can still correct your original answer if you wish.

  5. Compare your own answer to the model answer briefly in the text box at the end of the exercise. Is the answer similar? Where are differences found and what can they be due to?

  6. Save your assessment. You can still give your assessment a score of 0-1 depending on how good your answer is in light of the model answer.

About Notation

In this task, relations are marked either in the form

RELATION (attribute_1, attribute_2, attribute_3)

or

RELATION ({|attribute_1|}, attribute_2, attribute_3)

Key attributes are thus either underlined or marked inside {| |} brackets.

In this task, foreign keys are also marked. Foreign keys are marked as follows:

RELATION1.attribute_1 -> RELATION2.attribute_1

The example above means that attribute attribute_1 of relation RELATION1 is a foreign key referring to attribute attribute_1 of relation RELATION2.

When applying transformation rules, note that:

  • The order of attributes does not matter
  • You can name relations freely, and case sensitivity does not matter either. However, try to name relations and attributes so that they can be easily connected to the structures in the ER diagram.

Exercise 1

Transformoi kumpikin alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Kun olet transformoinut kummatkin kaaviot, varmista katsomalla mallivastaus, että olet saanut ne oikein. Mieti, millä tavoin relaatiokaavat liittyvät toisiinsa.

Harjoitus: Transformoinnin harjoittelua

Tämä harjoitus sisältää kokoelman erilaisia pienempiä harjoituksia, jotka liittyvät ER-kaavioiden transformointiin relaatiotietokannan kaavoiksi. Valitse sinua kiinnostavat harjoitukset ja tee ne.

Ennen tämän harjoituksen tekemistä on suositeltavaa, että tutustut ensin seuraavaan sisältöön:

Huomautus

Jos huomaat virheitä tai sinulla on kysyttävää tehtävistä, ota yhteyttä kurssin opettajiin

Harjoitusten pisteytys ja mallivastaukset

Tässä harjoituksessa sinun tulee pisteyttää vastauksesi itse mallivastauksen perusteella. Tee seuraavasti:

  1. Tee ensin harjoitus itsenäisesti. Tutustu rauhassa tämän osan tehtäviin. Tarkoitus on harjoitella, joten virheet ovat sallittu!

  2. Kun olet mielestäsi saanut harjoituksen tehtyä ja tallennettua, anna itsellesi pisteet klikkaamalla tehtävän yläpuolella olevaa "Aseta mukautetut pisteet" -valintaa, syöttämällä pistemääräsi (min. 0, maks. 1) ja painamalla vahvistuspainiketta:

    Esimerkki: Harjoituksen itsearviointi ja mallivastauksen katsominen

    Anna itsellesi pisteet välillä 0-1 sen perusteella, kuinka hyvin mielestäsi sait tehtyä harjoituksen. Vaikka et olisi saanut kaikkea oikein, anna itsellesi vähintään 0,01 hyvästä yrityksestä 🙂

  3. Voit nyt katsoa mallivastaus painamalla "Näytä mallivastaus" -painiketta. Kun avaat mallivastauksen ensimmäistä kertaa, saatat nähdä seuraavan ilmoituksen:

    Voit painaa tässä dialogissa "OK", jolloin harjoitus merkitään tehdyksi.

  4. Tutustu mallivastaukseen. Voit vielä halutessasi korjata alkuperäisen vastauksesi.

  5. Vertaile harjoituksen lopussa olevassa tekstilaatikossa omaa vastausta mallivastaukseen lyhyesti. Onko samankaltainen vastaus? Missä löytyy eroja ja mistä ne voivat johtua?

  6. Tallenna arviosi. Voit vielä antaa arviollesi pistemäärän 0-1 sen mukaan, kuinka hyvin vastauksesi on mallivastauksen valossa.

Merkinnöistä

Tässä tehtävässä relaatiot merkitään joko muodossa

RELAATIO (attribuutti_1, attribuutti_2, attribuutti_3)

tai

RELAATIO ({|attribuutti_1|}, attribuutti_2, attribuutti_3)

Avainattribuutit siis joko alleviivataan tai ne merkitään {| |} sulkujen sisään.

Tässä tehtävässä merkitään myös viiteavaimia. Viiteavaimet merkitään seuraavasti:

RELAATIO1.attribuutti_1 -> RELAATIO2.attribuutti_1

Yllä oleva esimerkki tarkoittaa, että relaation RELAATIO1 attribuutti attribuutti_1 on viiteavain, joka viittaa relaatioon RELAATIO2 attribuuttiin attribuutti_1.

Huomaa transformointisääntöjä soveltaessa, että:

  • Attribuuttien järjestyksellä ei ole merkitystä
  • Voit nimetä relaatiot vapaasti, eikä kirjainkoolla ole myöskään merkitystä. Pyri kuitenkin nimeämään relaatiot ja attribuutit niin, että ne voisi helposti yhdistää ER-kaaviossa oleviin rakenteisiin.

Harjoitus 1

Transformoi kumpikin alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Kun olet transformoinut kummatkin kaaviot, varmista katsomalla mallivastaus, että olet saanut ne oikein. Mieti, millä tavoin relaatiokaavat liittyvät toisiinsa.

# 780197.ex32-task1-1
# 780197.ex32-task1-2
# 780197.reflect-ex32-task1

Exercise 2

Huom: Tätä harjoitusta ei tarvitse pisteyttää itse.

Harjoitus 2

Huom: Tätä harjoitusta ei tarvitse pisteyttää itse.

# 780197.ex32-task2

Exercise 3

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Harjoitus 3

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

# 780197.ex32-task3
# 780197.reflect-ex32-task3

Exercise 4

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Harjoitus 4

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

# 780197.ex32-task4
# 780197.reflect-ex32-task4

Exercise 5

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Harjoitus 5

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

# 780197.ex32-task5
# 780197.reflect-ex32-task5

Exercise 6

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Harjoitus 6

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

# 780197.ex32-task6
# 780197.reflect-ex32-task6

Exercise 7

Luvussa 3.2 esitettiin olennaisimpia transformointisääntöjä, joilla suurin osa ER-kaavioiden tapauksista saadaan käsiteltyä. Toisinaan voi esiintyä niin sanottuja "epäselviä tilanteita", joissa useampi transformointisääntö voisi sopia.

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Huomaa, että tässä harjoituksessa on esitetty tilanteita, joille ei ole annettu valmiita sääntöjä. Tutki Luvussa 3.2 esitettyjä sääntöjä ja sovella niitä tapauskohtaisesti niin, että tuloksena on mahdollisimman järkevä relaatiotietokannan kaava. Tässä tehtävässä on useampi oikea ratkaisu.

Harjoitus 7

Luvussa 3.2 esitettiin olennaisimpia transformointisääntöjä, joilla suurin osa ER-kaavioiden tapauksista saadaan käsiteltyä. Toisinaan voi esiintyä niin sanottuja "epäselviä tilanteita", joissa useampi transformointisääntö voisi sopia.

Transformoi alla oleva ER-kaavio relaatiotietokannan kaavaksi. Kaavassa tulee olla merkittynä relaatioiden nimet, attribuutit, perusavaimet sekä viiteavaimet. Attribuuttien järjestyksellä ei ole merkitystä, mutta niiden tulee olla merkitty oikein.

Huomaa, että tässä harjoituksessa on esitetty tilanteita, joille ei ole annettu valmiita sääntöjä. Tutki Luvussa 3.2 esitettyjä sääntöjä ja sovella niitä tapauskohtaisesti niin, että tuloksena on mahdollisimman järkevä relaatiotietokannan kaava. Tässä tehtävässä on useampi oikea ratkaisu.

# 780197.ex32-task7
# 780197.reflect-ex32-task7

Finally

When you are ready, you can continue forward to the next chapter.

You can give a short self-assessment of your success and general feedback on the exercise below.

# palaute

Lopuksi

Kun olet valmis, voit jatkaa eteenpäin seuraavaan lukuun.

Voit antaa lyhyen itsearvion onnistumisestasi ja yleisesti palautteen harjoituksesta alla.

# palaute

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.