Podatkovno bazo si najlažje predstavljamo kot zbirko povezanih tabel. Predstavljajmo si tabelo (v papirnati ali v digitalni obliki) s prodajnimi naročili v trgovini. Potem imamo še eno tabelo izdelkov, ki vsebuje evidenco zalog. Če želimo izpolniti naročilo, moramo najprej izdelek poiskati v tabeli z naročilom, nato pa poiskati in prilagoditi raven zalog tega izdelka v tabeli izdelkov. Za take naloge uporabljamo podatkovno bazo (ang. database) in programsko opremo za upravljanje podatkovnih baz, ki jo imenujemo sistem za upravljanje podatkovnih baz – SUPB (database management system – DBMS).
Večina današnjih podatkovnih baz je relacijskih (ang. relational). Relacijske podatkovne baze jih imenujemo zato, ker vsebujejo tabele podatkov, ki so med seboj povezane oziroma v relaciji preko skupnega polja. Na primer »Tabela 1« prikazuje tabelo izdelkov, »Tabela 2« pa prikazuje tabelo računa. Opazimo lahko, da povezava oziroma relacija med obema tabelama temelji na skupnem polju koda_izdelka
. Kateri koli dve tabeli lahko med seboj preprosto povežemo preko skupnega polja.
Tabela 1
koda_izdelka | opis | enota | cena |
---|---|---|---|
A416 | žeblji | škatla | 2,58 € |
C923 | žebljički | škatla | 1,97 € |
B587 | vijaki | škatla | 2,36 € |
Tabela 2
koda_racuna | vrstica_racuna | koda_izdelka | kolicina |
---|---|---|---|
3676 | 1 | A416 | 10 |
3676 | 2 | C923 | 15 |
Podrobneje poglejmo prejšnji dve tabeli, da ugotovimo, kako sta organizirani:
S takšno strukturo nam podatkovna baza omogoča upravljanje s podatki s pomočjo SQL. Strukturiran povpraševalni jezik (ang. structured query language – SQL) je zmogljiv način iskanja ali spreminjanja zapisov, ki si ga bomo podrobneje ogledali v naslednji učni enoti.
Za lažje delo s podatkovnimi bazami oziroma za lažje upravljanje podatkovnih baz običajno uporabljamo sisteme za upravljanje podatkovnih baz (ang. database management systems – DBMS). Naštejmo še nekaj najbolj razširjenih: MySQL, PostgreSQL, Microsoft SQL Server, SQLite, MongoDB, Redis, MariaDB, Oracle, Firebase, Elasticsearch, DynamoDB, Cassandra, IMB DB2, Couchbase in drugi.