Relacijski podatkovni model

Osnovni pojmi

Pri relacijskem podatkovnem modelu uporabljamo določene osnovne pojme, s katerimi opisujemo posamezne dele modela:

Podatki (ang. data) so vrednosti, ki jih hranimo v podatkovni bazi. Podatki sami po sebi pomenijo zelo malo. Primer podatka v podatkovni bazi registriranih vozil je LJ 43-8VD.

Informacije (ang. information) so obdelani podatki. Na primer LJ 43-8VD je bila registrska številka avtomobila enega izmed avtorjev.

Podatkovna baza (ang. database) je zbirka tabel, ki jih imenujemo tudi entitete (ang. entities).

Vsaka tabela (ang. table) je sestavljena iz zapisov (ang. record), to so vodoravne vrstice v tabeli. Vsak zapis mora biti edinstven, zato je mogoče zapise v tabeli shraniti v poljubnem vrstnem redu.

Vsak zapis je sestavljen iz polj (ang. field), to so stolpci tabele, imenovani tudi lastnosti oziroma atributi (ang. Attribute).

Polja, ki vsebujejo podatke, so lahko različnih vrst. V splošnem obstajajo tri vrste podatkov oziroma polja: znakovna, številčna in datumska. Na primer, ime osebe je znakovno polje, rojstni dan osebe je datumsko polje, število otrok osebe pa številsko polje.

Obseg dovoljenih vrednosti določenega polje se imenuje domena (ang. domain). Polje kreditne kartice je lahko na primer omejeno samo na vrednosti Mastercard, Visa in Amex.

Če polje ne vsebuje ničesar, pravimo, da vsebuje ničelno vrednost ali NULL. Ničelne vrednosti lahko povzročijo zaplete pri izračunih, posledica pa so lahko netočni podatki. Da se temu izognemo, običajno nastavimo privzete vrednosti polj (ang. default values). Običajno nastavimo vrednost znakovnih polj na '' (prazen niz), številčnih polj na 0 (nič) ter datumskih polj na trenutni datum in čas.

Pogled (ang. view) je navidezna tabela, sestavljena iz podmnožice zapisov iz dejanskih tabel.


Ključ (ang. key) uporabljamo za dostop do točno določenega zapisa v tabeli.

Kazalo (ang. index) podatkovne baze je podatkovna struktura, ki izboljšuje hitrost operacij iskanja podatkov v tabeli podatkovne baze, vendar za ceno dodatnih zapisov in prostora za shranjevanje, s katerimi vzdržujemo strukturo kazala.

Relacija (ang. relationship) ena-proti-ena (ang. one-to-one) je tista, pri kateri za vsak primerek iz prve tabele v relaciji obstaja samo en primerek iz druge tabele. Primer relacije ena-proti-ena je oseba in njena EMŠO številka. Oseba ima natančno eno EMŠO številko in EMŠO številka pripada natančno eni osebi.

Razmerje ena-proti-ena

Relacija ena-proti-mnogo (ang. one-to-many) je tista, pri kateri za vsak primerek iz prve tabele v relaciji obstaja veliko primerkov iz druge tabele. To je običajna vrsta relacije. Primer relacije ena-proti-mnogo je odnos med kiparjem in njegovimi kipi. Vsak kipar je morda ustvaril veliko kipov, vendar je vsak kip ustvaril le en kipar. Relacija ena-proti-mnogo je enakovredna relaciji mnogo-proti-ena (ang. many-to-one).

Razmerje ena-proti-mnogo

Relacija mnogo-proti-mnogo (ang. many-to-many) je tista, pri kateri je za vsak primerek iz prve tabele v relaciji obstaja veliko primerkov iz druge tabele in za vsak primerek iz druge tabele obstaja veliko primerkov iz prve tabele. Primer relacije mnogo-proti-mnogo je čisto šolski, namreč dijak ima lahko več učiteljev, učitelj pa ima oziroma poučuje več dijakov.

Razmerje mnogo-proti-mnogo