Tehtävä: Johdatus normalisointiin

Tämä on viimeinen kurssin ohjattu tehtävä. Edellisissä ohjatuissa tehtävissä suunniteltiin, määriteltiin ja toteutettiin yksinkertainen relaatiotietokanta opiskelijareksisterin ylläpidolle yliopistossa.

Tässä tehtävässä tehdään viimeinen tarkistus luomallemme relaatiotietokannalle tarkastamalla sen normaalimuotoa. Normaalimuotojen tarkastelu käytännössä tarkoittaa, että tutkitaan, onko samaa dataa toistettu turhaan eri tietokantatauluissa.

Yleensä seuraamalla Luvussa 3.2 esitettyjä transformointisääntöjä saadaan heti jotain normaalimuotoa täyttävä tietokanta. Tämä tehtävä onkin varsin lyhyt, sillä onnistuneen suunnittelun ja transformoinnin seurauksena opiskelijarekisterimme on jo hyvin pitkälti normalisoitu 🙂 Varmistetaan kuitenkin asia vielä erillisellä tarkastelulla.

Tämä tehtävä on jatkoa Tehtävälle 3.1. Tee ensin Tehtävä 3.1 ennen kuin aloitat tämän tehtävän. Tehtävän voi tehdä, vaikket ole tehnyt Tehtävää 4.1.

Ennen tämän tehtävän aloittamista, tutustu seuraaviin asioihin:

  • Luku 5.1 ja 5.2: erityisesti funktionaalisen riippuvuuden määritelmä
  • Luku 5.3: 1NF, 2NF, 3NF, BCNF, 4NF määritelmät pääpiirteissään

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

Tärkeimmät muutospäivitykset listataan tähän:

Tehtävä

Jatketaan Tehtävässä 3.1 työstettyä opiskelijatietokantaa. Tällä kertaa tarkastellaan tietokannan normaalimuotoja.

Seuraa alla olevissa osioissa olevia vaiheita ja täydennä alla oleviin palautuslaatikoihin vastauksia sen perusteella. Mallivastaus löytyy jokaisen tehtävän yhteydessä.

Funktionaaliset riippuvuudet

# openOsa1

Normaalimuotojen tarkastelu

# openOsa2

Lopuksi

Huh! Tämä oli kurssin viimeinen ohjattu tehtävä. Enempää opiskelijatietokantaa ei enää tule 🙂.

Tämä tehtävä oli "pieni" loppukevennys, jolla kerrattiin hieman, mitä kaikkea edellisissä tehtävissä saatiin aikaan. Samalla tutustuttiin hieman normaalimuotoihin ja niihin liittyviin yleisiin nyrkkisääntöihin.

Pyydän lopuksi jättämään hieman palautetta tämän kurssin ohjatuista tehtävistä (Tehtävä 2.1, 3.1, 4.1 ja 5.1). Miltä koko ajatus ylipäätään vaikutti? Miten koit hyötyväsi ohjatuista tehtävistä (tai koitko ollenkaan)? Ehdotuksia ohjattujen tehtävien jatkokehitykselle (jos et ole maininnut niitä jo edellisien tehtävien palautteessa)?

# palaute

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