Demo 2

ER-kaavion transformointi relaatioiksi

Jos et ole vielä saanut tehtyä kaikkia demo1:en tehtäviä niin tee ne loppuun ennen kuin jatkat näitä tehtäviä.

ER-kaavion muuttamiseen relaatioksi pätevät seuraavat perussäännöt:

  1. Jokainen tavallinen kohde muutetaan relaatioksi (tauluksi)
  2. Jokainen ER-diagrammista löytyvä ominaisuus lisätään siihen liittyvään relaatioon
  3. Jokainen Many-to-Many -suhde muutetaan tavalliseksi relaatioksi.
  4. M-to-1-suhteet
  5. Moniarvoisista ominaisuuksista luodaan uusi kohde josta tehdään viittaus ominaisuuteen liittyvään kohteeseen

Opiskelijatietokanta

Muutetaan ensimmäisissä demoissa piirretty ER-kaavio relaatioiksi
Mallivastaus demo1:en ensimmäiseen tehtäväosaan

  1. Avaa ensimmäisissä demoissa tekemäsi Excel-tiedosto
  2. Ensimmäisissä demoissa listattiin taulukkomuodossa jokainen kohde ja siihen liittyvät ominaisuudet. Kaikki nämä määritykset toimivat suoraan pohjana relaatioiden luomiselle. Päivitetään nämä määritykset vastaamaan suoraan tietokantaan tulevia tauluja
  3. M-to-1-suhteet

  4. M-to-M-suhteet

  5. 1-to-1-suhteet

  6. Moniarvoiset ominaisuudet

Normalisointi

Varmistetaan ettei muodostetuissa relaatioissa esiinny turhaa tietojen toistoa ja ylimäärää. Tällä estetään ongelmia tietojen päivityksessä, lisäämisessä ja poistamisessa.

Tarkistetaan seuraavat asiat:

Opiskelijatietokannastamme löytyy seuraava ongelmallinen kohta:

Yritystietokanta

Tehdään transformointi ensimmäisissä demoissa piirretylle yritystietokannalle. Tee transformointi omalle versiollesi ja käytä pohjana malliratkaisua vain jos omaa versiotasi ei ole saatavilla. Älä huolestu vaikka oma versiosi ei ole aivan samanlainen kuin malliratkaisu.

  1. Käsitellään jokaista kohdetta uutena tauluna (relaationa). Jokaiseen kohteeseen liittyvä ominaisuus-taulukko tarkoittaa nyt tietokantaan luotavan relaation kenttiä.
  2. Etsi kaaviostasi ensimmäiseksi kaikki M-to-1-suhteet. Lisää näiden suhteiden vaatimat uudet kentät (viiteavaimet) suhteessa M:n puolella olevaan relaatioon. Varmista, että kenttien tietotyypit tulevat oikein eli viiteavaimen tietotyyppi pitää olla sama, kuin sen viittauksen kohteena olevan kentän.
  3. Etsi kaaviostasi kaikki M-to-M-suhteet. Luo jokaisesta M-to-M-suhteesta taulu. Taulun nimenä voit käyttää suoraan suhteeseen kirjoitettua tekstiä tai jotakin siitä johdettua. Jos sinulla on johonkin kohteeseen liitettynä ominaisuuksia niin sinulla on tällaisesta suhteesta jo valmis pohja taululle (Vrt. kohteet)
  4. Lisää jokaiseen M-to-M-suhteen pohjalta luotuun tauluun viiteavainkenttä, jokaista suhteeseen liittyvää kohdetta varten. Varmista, että viiteavainkenttien tietotyyppi tulee määriteltyä oikein. Määritä uuden taulun avaimeksi yhdistetty avain viiteavaimista.
  5. Tarkista löytyykö kaaviostasi moniarvoisia ominaisuuksia ja luo niitä varten uudet taulut. Poista moniarvoisen ominaisuuden maininta kohteesta johon se oli alunperin liitetty. Nimeä moniarvoisen ominaisuuden takia luotu taulu saman nimiseksi kuin ominaisuus.
  6. Määrittele viite-eheyksien vyörymissäännöt kaikkiin luomiisi viiteavaimiin.

Normalisointi

Käy läpi jokainen yritystietokannan taulu ja mieti toteuttavatko ne seuraavat vaatimukset:

Jos löydät ongelmallisia kohtia niin jaa ongelmallinen taulut(t) useampaan tauluun opiskelijatietokannassa tehdyn normalisoinnin tapaan.

Futistietokanta

Muunna edellisissä demoissa piirtämäsi futistietokannan ER-kaavio relaatioiksi vastaavalla tavalla kuin edellisetkin. Käytä pohjana omaa kaaviotasi vaikka se eroaisikin paljon malliratkaisusta.

Transformoinnin jälkeen varmista vielä tietokantasi rakenne normalisoinnilla. Korjaa mahdolliset ongelmakohdat.


http://appro.mit.jyu.fi/2001/kevat/tietokannat/demot/demo2/index.html
© Tommi Lahtonen ()<URL: http://www.iki.fi/hazor/>
24.08.2001 15:02:30