Релационен модел на данни

             Релационен модел на данни една релационна база данни съхранява данните си в релации, които потребителя възприема като таблици. Всяка релация е съставена от записи и атрубути (полета). Физическата им последователност в таблицата е от особено значение. Всяка релация има признак за различаване на данните в нея, който се нарича първичен ключ. Релационния модел включва отношения: 1:1 ; 1:M ; N:1 ; N:M. Една релация междуу 2 таблици се изгражда чрез съпоставянето на записи от едно общо поле.
              Предимства на релационния модел от данни – вградена цялост на данните на много нива, за да бъдат защитени от грешки; логическа и физическа. Независимост на данните от приложенията на БД; лесно извличане на данни; съгласуваност и тоност на данните.
              Отношения в релационните БД 
              Релационния модел е изграден на базата на релации (отношения). При него отношенията се представят чрез таблици. Има няколко вида отношения:
  • 1:1 – когато всеки запис от първата таблица е свързан максимуум с един запис от втората таблица. Едната таблица играе ролята на родител, а другата на дъщерна таблица; Релацията междуу таблиците се извършва с първичен ключ, който се копира от родителската таблица
  • 1:N – само един запис от първата може да се свърже с много от другата, но един от втората може да се свърже само с един запис от първата. При този тип е необходимо дъщерната таблица да има освен външен ключ и свой първичен ключ.  
  • N:M - когато един запис от родителската таблица  е свързан с много записи от дъщерната таблица и обратното. Релацията се осъществява чрез допълнителна таблица – „свързваща таблица”
  • М:1 – 1 запис от родителската може да съответства на един от дъщерната, докато на един от дъщерната може да съответстват няколко от родителската. Релацията на първичните и външните кллючове е същата като при отношен 1:М.
            Ключове на релациите. 
            Подобно на множеството единици, релациите имат множество от един или повече атрибути, които играят ролята на ключове. За релацията може да се дефинира "ключ" по по-формален начин отколкото информационното означение за ключ на множество от атрибути, което разграничава членовете на едно множество от единици. Казва се, че множеството S от атрибути на релацията R е ключ ако:
  • няма екземпляр на R, който да има две тюпли, които да са еднакви във всички атрибути на S, и не са прости тюпли и
  • никое подмножество на S няма горното свойството.
            Операции в релационния модел данни. 
            Има два съвсем различни вида означения, използвани за изразяване на операции върху релации:
  • алгебрично означение, наречено релационна алгебра, където запитванията се изразяват чрез прилагане на специализирани оператори с релациите;
  • логическо означение, наречено релационни изчисления, където запитванията се изразяват чрез написването на логически формули, които тюплите в отговор трябва да удовлетворяват.
            Тук ще разгледаме само релационната алгебра. Има пет основни операции, които дефинират релационната алгебра.
  • Обединение. Обединението на релациите R и S, означавано R∪S, e множество от тюплите, които са в R и S или и в дветe. Операторът обединение може да се приложи към релации от една и съща степен, така че тюплите в резултата да имат същия брой компоненти. Когато се разглежда обединение на релации, имената на атрибутите на релациите-операнди се игнорират и на релацията-резултат могат да бъдат дадени нови имена на атрибутите. Редът на атрибутите в операндите при обединението е съществен.
  • Разлика. Разликата на релациите R и S, означена R-S е множество от тюпли в R, но не и в S. Отново се изисква R и S да имат еднаква степен.
  • Произведение (декартово произведение). Нека R и S са релации от степен к1 и к2, съответно. Тогава RxS, т.е произведението на R и S е множество от всички възможни тюпли 12), чиито първи к1 компоненти са от R и чиито последни компоненти к2 са от тюпла в S.
  • Проекция. Идеята на тази операция е да се вземе релацията R, да се махнат някои от компонентите (атрибутите) и/или да се реорганизират някои от оставащите компоненти. Ако R e релация от степен k, нека pi1,i2,...m (R), където ij са различни числа от едно до к, означават проекцията на R върху компонентите I1, i2,...,im, което е множество от m-тюпли a1a2...am, такива, че съществува някоя к-тюпла b1b2...bk в R, за която aj=bij, за j=1,2,...m. Например p3,1 (R) се получава, като се вземе всяка тюпла m на R и се формират 2-тюпли от третата и първата компонента на m в този ред. Ако R има атрибути, именуващи неговите колони, тогава може да се заместят имената на атрибутите с номерата на компонентите и в релацията проекция може да се използват същите имена на атрибути. Така релацията R e R(A,B,C), тогава pС,А (R), е същото като p3,1 (R)  и резултатът от релацията има атрибут С именуващ първата колона и атрибут А, именуващ втората колона.
  • Селекция. Нека F е формула включваща
            а/ операнди, които са константи или компоненти; компонентата i се представя с $i,
            б/ аритметични оператори за сравнение <,=,>,£,³, ¹, и
            в/ логическите оператори Ù (и), Ú (или) и Ø (не).
            Тогава, sF (R)  е множество от тюпли m на R такива, че ako за всяко i, ние заменим i-тия компонент на m с $i във формулата F, формулата F става вярна. Например s$1>$3 (R)  означава множеството от тюпли m  в R, такива че втората компонента на m е по-голяма от третата, докато s$1=“Петров” (R) е множеството от тюпли в R, чиято първа компонента има стойност “Петров”. Както при проекцията, ако колоните на релацията са именувани, тогава формулата в селекцията може да използва името вместо номера на колоната.

Допълнителни алгебрични операции:
  • сечение: RS≡R(R-S), R и S са с една и съща размерност.
  • съединение: имаме съединение  между релациите R и S по стълбовете i и j (означаваме  R > < S ). Първия ред од R se умножава с 2-та реда от S и после втория ред с 2-та от S. Ако R има 3 полета, а S-2.

Коментари: