Relācija (datubāze)

Bāzes relācijas mainīgais un atvasināts relācijas mainīgais (view)

Relāciju mainīgie (relvars) ir klasificēti divās klasēs, kuras ir - bāzes relāciju mainīgie un atvasinātie relāciju mainīgie.
Bāzes relācijas mainīgais ir relācijas mainīgā avots, kas nav atvasināts no neviena cita relācijas mainīgā. Iekš SQL termins bāzes tabula var tikt rupji uzskatīts par to pašu bāzes relāciju mainīgo. Lietojot DDL ir iespējams definēt bāzes relācijas mainīgos. Lietojot SQL un komandas CREATE TABLE sintaksi, arī ir iespējams definēt bāzes relācijas mainīgos.

Piemērs:
CREATE TABLE List_of_people (
 ID INTEGER,
 Name CHAR(40),
 Address CHAR(200),
 PRIMARY KEY (ID))
Atvasināts relācijas mainīgais ir relācijas mainīgais, kas ir atvasināts no viena vai vairākiem relāciju mainīgajiem atsaucoties uz relācijas algebras izteiksmēm vai relācijas aprēķināšanas izteiksmēm. Skats ir uzskatāms par atvasinātu relāciju mainīgo. Lietojot DDL, ir iespējams definēt atvasinātus relāciju mainīgos. Lietojot SQL, precīzāk, komandas CREATE VIEW sintaksi, arī ir iespējams definēt atvasinātus relāciju mainīgos.

Piemērs:
CREATE VIEW List_of_Okinawa_people AS (
 SELECT ID, Name, Address
  FROM List_of_people
  WHERE Address LIKE '%, Okinawa')

Primārās atslēgas

Primārā atslēga unikāli definē attiecības ar ierakstiem datu bāzē. Lai raksturlielums tiktu uzskatīts par labu, primārā atslēga nedrīkst atkārtoties. Lai gan naturālie atribūti ir labas primārās atslēgas, aizvietotājpases taustiņus var bieži izmantot to vietā. Aizvietotājpases taustiņš ir mākslīgi piešķirts atribūts objektam, kurš unikāli to identificē, piemēram, tabulas ar informāciju par studentiem augstskolā, viņiem visiem varētu tikt piešķirti studenta ID, lai atšķirtu studentus vienu no otra. Aizvietotājpases taustiņam nav raksturīga nozīme, bet drīzāk tas ir noderīgs ar savu spēju identificēt ierakstu.

Ārējās atslēgas

Ārējā atslēga ir lauks relāciju tabulas, kas atbilst primārajai atslēgai citā kolonnas tabulā. Ārējā atslēga var tikt izmantota starpnozaru atsauces tabulās. Ārējajām atslēgām nav jābūt unikālām vērtībām saistībā ar atsaucēm. Ārējās atslēgas efektīvi izmanto vērtību atribūtus attiecībā uz domēna viena vai vairākiem raksturlielumiem, kas saistās ar atsaucēm.

Ierobežojumi

Ar Ierobežojumiem ir iespējams vēl vairāk ierobežot domēna atribūtu. Piemēram, ierobežojums var ierobežot konkrētā veselo skaitļu atribūtu vērtību starp 1 un 10. Ierobežojumi sniedz vienu metodi kā īstenot biznesa noteikumus datu bāzē. SQL ievieš ierobežojumu funkcionalitāti ar pārbaudes ierobežojumiem.
Ierobežojumi nosaka datus, ko var uzglabāt relācijā. Tie parasti tiek definēti izmantojot izteiksmes, kuru rezultāts ir Būla vērtība, norādot, vai dati atbilst ierobežojumam. Ierobežojumi var attiekties uz atribūtiem, uz kortedžu (ierobežojoša atribūtu kombinācija), vai uz visu relāciju.
Tā kā katram atribūtam ir attiecīgais domēns, pastāv ierobežojumi (domēnu ierobežojumi). Divi galvenie principi par relāciju modeli ir pazīstami kā entītiju integritāte un references integritātes. 
(""References integritāte ir stāvoklis, kad visas vērtības no visām ārējām atslēgām ir derīgas. References integritāte ir balstīta uz entītiju integritātes. Entītiju integritāte nosaka, ka katrai entītijai ir unikāla atslēga.
Piemēram, ja katra tabulas rinda atspoguļo attiecības uz unikālu entītiju, tad tabulai jābūt vienai kolonnai vai kolonnu kopai, kas nodrošina unikālu identifikatoru tabulas rindām.
Šo kolonna (vai kolonnu kopumu) sauc par mātes atslēgu tabulā. Lai nodrošinātu, ka mātes atslēga nesatur atkārtotas vērtības, jādefinē unikāls indeks kolonnai vai kolonnām, kam ir mātes atslēga. Mates atslēgas definēšana ir entītiju integritāte "")

Relāciju datubāzu pārvaldības sistēmas

Relāciju datubāzes, ir kļuvušas par galveno izvēli informācijas uzglabāšanai jaunās datubāzes, ko izmanto finanšu uzskaitei, ražošanas un loģistikas informācijai, personāla datiem un daudz kam citam. Relāciju datubāzes bieži aizstāj hierarhiskās datubāzes un tīkla datubāzes, jo tās ir vieglāk saprast un izmantot, pat ja tās ir mazāk efektīvas. Līdz ar datoru veiktspējas palielināšanos , nepilnības relāciju datubāzēs, kuru dēļ tās nebija lietderīgas agrākos laikos, tagad ir pirmajā vietā ar to lietošanas ērtumu. Tomēr relāciju datu bāzēs ir izaicinājušas Objektu datubāzes, kas tika ieviestas, lai mēģinātu risināt objektu relāciju pretestības nesakritību relāciju datu bāzē, un XML datu bāzēs.
Trīs no vadošajiem tirdzniecības relāciju datubāzes pārdevējiem ir Oracle, Microsoft un IBM. Savukārt no vadošajiem atklātā koda pārdevējiem ir MySQL, PostgreSQL, un SQLite.

Digitālās ūdenszīmes relāciju datu bāzēs

Digitālās ūdenszīmes relāciju datu bāzēs parādījās kā kandidāta risinājums, lai nodrošinātu autortiesību aizsardzību, viltojumu notveršanu, nodevēju izsekošanu, saglabājot relāciju datu viengabalainību. Daudzas ūdenszīmju tehnoloģijas literatūrā šiem mērķiem ir ierosinātas risināt .
Digitālās ūdenszīmes parasti izmanto bilžu aizsargāšanas , kā arī tiešsaistē pieejamo dokumentu piemēru aizsargāšanai.

Relāciju operācijas

Vaicājumus, kuri tiek veikti pret relāciju datu bāzi izsaka kā relāciju kalkulu vai relāciju algebru. Kods savā sākotnējajā relāciju algebrā ieviesa astoņus relāciju operatorus, sadalot tos divās grupās, katrā pa četriem operatoriem. Pirmie četri operatori pamatojās uz noteiktajām tradicionālajām matemātiskajām darbībām:
Savienības operators apvieno divas ierakstu attiecības un likvidē visus ierakstu dublikātus no rezultāta. Relāciju savienības operators atbilst SQL UNION operatoru.
Krustojuma operators ražo ierakstu kopumu, ko divas attiecības koplieto kopīgi. Krustojums tiek īstenots SQL formā ar INTERSECT operatoru.
Atšķirības operators darbojas uz divām attiecībām un rada ierakstu kopumu no pirmās attiecības otrajā, ja vien otrajā tās jau neeksistē. Atšķirība ir ieviesta SQL formā ar EXCEPT vai MINUS operatoriem.
Dekarta produkts divu attiecībās ir savienojums, kas neierobežo nevienu kritēriju, kā rezultātā katrā ieraksta pirmās saistības ir jāsaskaņo ar katru otrā ieraksta attiecībām. Dekarta produkts tiek īstenota SQL kā CROSS JOIN pievienošanas operators.
Atlikušos četrus operatorus Kods ietvēra īpašajās darbībās raksturīgajām relāciju datu bāzēm:
Atlases vai ierobežojuma operators iegūst ierakstus no relācijas, ierobežojot rezultātus tikai tiem, kas izpildīs īpašos kritērijus, tas ir apakškopu attiecības kopu teorijai. SQL ekvivalents izvēlei ir SELECT vaicājuma paziņojums ar WHERE klauzulā.
Projekcijas operators iegūst tikai norādītos atribūtus no ierakstiem vai to kopumu ierakstiem.
Pievienošanas operators savieno divas attiecības ar kopīgām īpašībām. SQL šis operators tiek īstenots ar INNER JOIN pievienošanas operatoru.
Relāciju sadalīšana ir nedaudz sarežģītāka operācija, faktiski pretēja Dekarta reizinājumam.
Ieviesti arī citi operatori kopš Koda sākotnēji ieviestajiem astoņiem operatoriem, šie ieviestie operatori ir salīdzinājuma un paplašinājuma operatori, kas atbalsta ligzdošanu un hierarhiskus datus, kā arī citus.