Kentät, avaimet, viite-eheys, ER-kaavion muuntaminen relaatioiksi

ääniterekisteri

Käydään vielä läpi edellisellä luennolla aloitettua ääniterekisterin er-kaaviota.

aaniterekisteri

Relaatiotietokannan osat

Relaatiotietokanta muodostuu tauluista, jotka sisältävät kenttiä.

Taulut (tables)

Taulun nimeksi kannattaa valita jokin selkeä ja kuvaava nimi. Nimessä kannattaa kuitenkin välttää välilyöntejä, erikoismerkkejä ja skandinaavisia merkkejä (å,ä,ö).

Jokainen taulu sisältää yhden tai useamman kentän

Kentät (fields)

Kenttiä luotaessa niille määritellään seuraavanlaisia ominaisuuksia:

SQL-92:en tietotyypit

CHAR [(pit)]
Kiinteänmittainen merkkijono. Oletuspituus on 1.
VARCHAR [(pit)]
Vaihtuvanmittainen merkkijono.
NUMERIC [(pit., [desim.osa])]
Tarkka numeerinen arvo, jonka koko pituus on pit ja desim.osa kuvaa desimaaliosan pituutta.
DECIMAL [(pit., [desim.osa])]
Kuten edellä mutta pituus voi ohjelmistokohtaisesti olla pitempikin kuin pit.
INTEGER
Kokonaisluku, jonka pituus on ohjelmistokohtainen. Esim. 32-bittinen kokonaisluku.
SMALLINT
Kokonaisluku, joka on pienempi kuin INTEGER. Sen pituus on ohjelmistokohtainen (puolisana). Esim. 16-bittinen kokonaisluku.
FLOAT [(pit.)]
Liukuluku, jonka pituus on suurempi tai yhtäsuuri kuin pit.
REAL
Liukuluku, jolla on ohjelmistokohtainen pituus.
DOUBLE PRECISION
Kaksoistarkkuudella esitetty liukuluku, jonka pituus on ohjelmistokohtainen ja pitempi kuin REALin pituus.
BIT [(pit.)]
Mielivaltainen bittijono. Oletuspituus on 1.
BIT VARYING (pit.)
Mielivaltainen annetunmittainen bittijono. Pit on annettava.
DATE
Vuosi (0001 - 9999), kuukausi ja päivä.
TIME [(pit.)]
Tunti (00-23), minuutti (0-59) ja sekunti (00-61.9999).
TIMESTAMP [(pit.)]
Vuosi, kuukausi, päivä, sekä tunti, minuutti ja sekunti.
TIME WITH TIME ZONE (pit.)
Sama kuin TIME, mutta lisätietona erotus aikavyöhykkeeseen.
TIMESTAMP WITH TIME ZONE (pit.)
Sama kuin TIMESTAMP, mutta lisätietona erotus aikavyöhykkeeseen.

AVAIMET (keys)

ER-mallin muuntaminen relaatioiksi

  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. Many-to-One -suhteet
  5. Moniarvoisista ominaisuuksista luodaan uusi kohde josta tehdään viittaus ominaisuuteen liittyvään kohteeseen

mallitietokannan er-kaavio

mallitietokannan relaatiot

Viite-eheys (Referential Integrity)

http://appro.mit.jyu.fi/2002/kevat/tietokannat/luennot/luento3/index.html
© Tommi Lahtonen ()<URL: http://www.iki.fi/hazor/>
13.03.2002 16:10:11