- Tietokanta on kokoelma yhteenliittyvää tietoa.
- Tietokanta on loogisesti yhtenäinen kokoelma tietoa jolla on jokin merkitys.
- Tietokanta on suunniteltu, rakennettu ja täytetty tiedolla jotain tiettyä tarkoitusta varten. Sillä on jokin tarkoitettu käyttäjäryhmä ja joitain ennaltalaadittuja ohjelmia joita käyttäjät käyttävät.
- Nimeä ei voi syöttää jollei syötä myös osoitetta.
- Osoitetta ei voi poistaa jos se liittyy johonkin nimeen.
- Tietokannat, Viite-eheys (Referential Integrity) Heikot kohteet (Weak entities).
- Ohjelmoinnillinen pääsy tietoihin.
- Monta päivitystä, jotka tehdään joko kaikki tai ei yhtään.
- Mahdollistetaan vahvistuksien (commit) ja peruutuksien (rollback) avulla
- Tapahtumien hallinta (Transaction management)
- Jakamattomuus (Atomicity)
- Varmistetaan, että kaikki vanha data on saatavilla viimeiseen hyväksyntään (commit) saakka.
- Pysyvyys (Durability)
- Elvytys (Recovery) Useampi tietokone saman tiedon käsittelijänä
- Samanaikaisuuden hallinta (Concurrency Control)Transaction isolationTransaction serializability
Yleisiä vaatimuksia tietokannalta
- Kukin tieto tallennetaan tietokannassa vain yhteen paikkaan eli ei esiinny turhaa toistuvuutta (redundanssia)
- Tietoja pystytään hakemaan joustavasti erilaisin perustein, myös sellaisin, joita ei tietokantaa suunnitellessa ole pystytty ennakoimaan.
- Tietokannan rakenteellinen muuttaminen on joustavaa
- Hyväksikäyttö ja sovellusohjelmat ovat riippumattomia tietojen fyysisestä talletusrakenteesta: tietoriippumattomuus
http://www.bell-labs.com/topic/books/db-book/b.pdf
Relaatiotietokannat
- E.F. Codd esitteli relaatiomallin jo 1970
- yksinkertaisin, joustavin ja toteuttaa parhaiten tietokannalle asetettavat vaatimukset
- Vaatii eniten koneresursseja
- Relaatiotietokannassa tiedot esitetään tauluina (table) yhtä riviä kutsutaan tietueeksi (record)
- taulun jokaisella rivillä yhtä monta tietoa
- jokaisella rivillä yksikäsitteinen perusavain
- kutakin riviä vastaa jokin reaalimaailman kohde
- kuhunkin kohteeseen liitetään vain siihen välittömästi liittyvät ominaisuudet
- tauluja kutsutaan myös relaatioiksi
- Kukin yksittäinen tieto kannassa voidaan hakea ainakin ilmoittamalla taulun nimi, perusavaimen sarakenimi ja avaimen arvo sekä haettavan tiedon sarakenimi. Ainakin tämä hakutapa olemassa, lisäksi lukemattomia muita.
Tietokannan hallintajärjestelmät
Tietokannan hallintaan tarkoitettu ohjelmisto esim. Oracle, DB2, Ingres ja SQL Server. Tietyin rajoituksin tietokannan hallintajärjestelmäksi voi kutsua myös Accessia ja Paradoxia.
Hallintajärjestelmän perusvaatimukset
- Perusoperaatiot (tallennus, haku, päivitys)
- Tietoriippumattomuus
- Yhteiskäyttö
- Ylimäärättömyys
- Eheys
- Turvaaminen
- Tehokkuus ja suorituskyky
- Yhteensopivuus
- Skaalautuvuus
Tietokannan hallintajärjestelmien huonoja puolia
- Monimutkaisuus
- Koko
- Hinta
- Laitteistokustannukset
- Muutoskustannukset
- Suorituskyky
- Vahinkojen suuri vaikutus
Lähteet
...
- Relaatiotietokannat
- Relaatiomalli
- Relaatiotietokannan suunnittelu (Access)
- Sql
- Tietokannan hallintajärjestelmät
- Hallintajärjestelmän perusvaatimukset
- Tietokannan hallintajärjestelmien huonoja puolia
- Ohjeita MySql käyttöön
- Access tehtäviä (perusteita)
- Access 2013-harjoitus: taulujen luonti (+ vastaavat SQL-lauseet)
- Access 2013-harjoitus: tietojen lisäys ja kyselyt (+ vastaavat SQL-lauseet)
- SQLiteman ja SQLite harjoitus 1
Aineistoa:
Rami Heinisuo: PHP ja MySql
Qt esimerkkisovellus Sqlite3:n käytöstä: Lataa
...