Kaj je shema baze podatkov?

Shema baze podatkov je način za opis strukture in razmerij informacij, ki se bodo uporabljale in hranile v bazi podatkov. Nekatere sheme so napisane v jeziku, ki ga je mogoče razlagati s programsko opremo za upravljanje baz podatkov (DBMS), druge pa so popolnoma abstraktni diagrami. Primarni elementi sheme baze podatkov so entitete in tabele. Entiteta je podatkovni model za objekt v bazi podatkov, medtem ko je tabela shranjeno zaporedje vrednosti ali drugih entitet. Tako kot načrt je mogoče uporabiti dobro zasnovano shemo, da natančno vidite, kako je zgrajena arhitektura baze podatkov.

Sheme baz podatkov so včasih potrebne, da izrecno pokažejo, kako je datum shranjen in kako se nanaša na ostalo bazo podatkov. Entiteta je predstavitev zbirke podatkov. Kot vsaka podatkovna struktura ima lahko več polj. Vendar imajo entitete običajno edinstveno identifikacijsko polje. Temu pravimo primarni ključ.

Primarni ključ je povezava do tabele. Ključ mora biti edinstven med vsemi drugimi elementi v tabeli. Primer bi bila številka stranke za bazo podatkov, ki sledi nakupom v trgovini. Vsaka entiteta ima lahko samo en primarni ključ.

Entitete imajo lahko tudi poljubno število tujih ključev. Tuji ključ je najpogosteje primarni ključ druge entitete v drugi tabeli. V zgornjem primeru je lahko tuji ključ številka naročila za to stranko.

V relacijskih bazah podatkov se primarni in tuji ključi uporabljajo za izražanje zelo pomembnega koncepta odnosov ena proti več. V navedenem primeru ima lahko stranka veliko različnih naročil in številk naročil. Obratno ne drži, ker ima naročilo lahko samo enega kupca. Relacije ena proti več so del razloga, zakaj je shema baze podatkov potrebna.

Druga vrsta razmerja se imenuje veliko proti mnogim. To je primer, v katerem entiteta ne more imeti le veliko razmerij z enim samim tipom, ampak je lahko v številne tipe vključena tudi druga vrsta. Primer tega je, kako lahko poljubno število strank naroči isti izdelek. Hkrati lahko stranka naroči poljubno število izdelkov. To razmerje mnogo proti mnogim je običajno, vendar zahteva posebno modeliranje podatkov za delovanje znotraj sheme baze podatkov.
Čeprav obstaja nekaj standardnih konvencij, ki jih upoštevamo pri ustvarjanju sheme baze podatkov, obstaja tudi veliko načinov za predstavitev podatkovnih modelov. Natančno, kako je vsak objekt sheme predstavljen v abstraktni zasnovi, je odvisno od presoje oblikovalca podatkov. V nekaterih situacijah bo sistem DBMS sposoben sprejeti shemo baze podatkov, ki je napisana na poseben način, in dejansko samodejno implementirati nekatere zasnove.