Mikä on tietokantakaavio?
A tietokantaskeema on kokoelma metatietoja, joka kuvaa tietokannan objektien ja tiedon välisiä suhteita. Helppo tapa kuvitella skeema on ajatella sitä laatikona, joka sisältää taulukoita, tallennettuja proseduureja, näkymiä ja niihin liittyviä tietoresursseja. Kaava määrittelee tämän laatikon infrastruktuurin.
Tietoresurssisäiliöt
Perustasolla skeema toimii tietoresurssien säilönä. Eri tietokantatoimittajat kuitenkin jäsentävät skeemansa eri tavoin. Esimerkiksi Oracle käsittelee jokaista skeemaa käyttäjätilinä. Luodakseen uuden skeeman tietokannan järjestelmänvalvoja luo uuden tietokannan käyttäjän, jolla on aiottu skeeman nimi.
Miksi skeemoilla on väliä
Koska skeemat muodostavat tietokannan rakenteellisen perusominaisuuden, useimmat tietokantaympäristöt käyttävät käyttöoikeuksia skeematason objekteille.
Esimerkiksi yrityksen tietokanta voi sisältää useita käyttäjiä. Jokaisella käyttäjällä on skeema, mutta pääsy eri skeemoihin myönnetään yksittäin ja käyttöoikeuksien tarkkuudella kotiskeeman ulkopuolisille käyttäjille.
Useimmat tietokannan hallintatyökalut eivät lue skeemoja; sen sijaan ne listaavat tietokantoja ja käyttäjiä.

Esimerkiksi yritys luo käyttäjätilejä (skeemoja) Bobille ja Janelle. Se luo myös tilejä osastoille, kuten HR ja markkinointi. Sitten se antaa kunkin osaston analyytikolle pääsyn osaston skeematiliin.
HR-analyytikko luo taulukoita ja näkymiä HR-skeemaan ja myöntää Bobille oikeuden lukea (mutta ei kirjoittaa) HR-taulukkoa, jossa luetellaan työntekijöiden nimet ja ID-numerot. Henkilöstöanalyytikko voi myös myöntää Janelle oikeuden lukea ja kirjoittaa HR-taulukkoon, jossa on lueteltu työntekijöiden puhelinnumerot.
Myöntämällä käyttöoikeudet tällä tavalla, vain oikeat roolit ja käyttäjät voivat lukea, kirjoittaa tai muokata suuren tietokannan itsenäisen tietoresurssin tietoja.
Jokainen tietokantakone pitää skeemoja perustavanlaatuisena menetelmänä tietojen erottelussa usean käyttäjän ympäristössä.
Eri tietokantakoneet kohtelevat käyttäjiä ja malleja eri tavalla. Tutustu tietokantamoottorisi ohjeisiin syntaksi ja logiikkamallit, jotka ympäröivät käyttäjiä, skeemoja ja käyttöoikeuksia.
Kaavioiden luominen
Kaavio määritellään muodollisesti SQL: n (Structured Query Language) avulla. Esimerkiksi Oraclessa luot skeeman luomalla sen omistavan käyttäjätilin:
LUO KÄYTTÄJÄ bob
TUNNISTETTU väliaikaisella_salasanalla
OLETUSTAULUKKOPAIKKA esimerkki
QUOTA 10M ON esimerkki
VÄLIAIKAINEN PÖYTÄTILAN lämpötila
QUOTA 5M ON -järjestelmä
PROFIILI app_user
SALASANA EXPIRE;
Muut käyttäjät saavat pääsyn uusiin skeemoihin heidän käyttäjätunnuksensa tai yhden tai useamman roolin perusteella, joihin käyttäjätili on lisätty.
Kaaviot vs. Tietomallit
Kuten tietomalli, skeema ei ole luonnostaan rakennettu tekemään mitään. Sen sijaan se on infrastruktuuri, joka tukee segmentointioikeuksia tietokannassa.
Tietomalli on kokoelma taulukoita ja näkymiä, jotka on yhdistetty tiettyihin avaimiin. Nämä tietovarat yhdessä palvelevat liiketoimintaa. Tietomallin soveltaminen skeemaan on hyväksyttävää – suurissa ja monimutkaisissa tietomalleissa niiden yhdistäminen skeemoihin mahdollistaa älykkään tietokannan hallinnan. Mutta ei ole loogisesti välttämätöntä käyttää skeemaa tietomallille tai käsitellä tietomallia skeemana.

Esimerkiksi HR-osasto voi sisällyttää kaavioonsa tietomallin työntekijöiden suoritusarviointia varten. Sen sijaan, että luotaisiin skeema näille katsauksille, tietomalli voi istua HR-skeemassa (muiden tietojen kanssa mallit) ja pysyvät loogisesti erillisinä taulukon etuliitteiden ja datassa olevien objektien näkymänimien avulla malli.
Tietomalli voi ansaita epävirallisen nimen, kuten suorituskykyarviot, ja sitten kaikki taulukot ja näkymät voivat olla etuliiteinä PR_. Työntekijäluettelotaulukkoon voidaan viitata nimellä hr.pr_employeeilman uutta mallia suorituskyvyn arvioinneille.
FAQ
-
Mitä eroa on tietokantaskeeman ja tietokannan tilan välillä?
Tietokannan malli kuvaa tietokantaa. Tietokannan tila viittaa tietokannan sisältöön tietyllä hetkellä ja sitä voidaan pitää tietokantaskeeman laajennuksena.
-
Mikä on tietokannan relaatiokaavio?
Relaatioskeema hahmottelee taulukoiden ja toisiinsa liittyvien kohteiden väliset suhteet. Kaava voi olla graafinen kuva tai kaavio tai se voidaan kirjoittaa SQL-koodilla.