- Нормалних облика
- Први нормалан облик (1ФН)
- Други нормалан облик (2ФН)
- Трећи нормалан облик (3ФН)
- Примери трећег нормалног облика
- Пример 1
- Креирајте нову табелу
- Пример 2
- Референце
Трећи нормална форма (база) је релациона база података дизајн техника, где су различити табеле које сачињавају то не само у складу са другом нормалном облику, али су сви њени атрибути или поља директно зависе од примарног кључа.
Приликом дизајнирања базе података, главни циљ је створити тачан приказ података, односа између њих и ограничења на податке који су релевантни.
Извор: пикабаи.цом
Да би се постигао овај циљ, могу се користити неке технике дизајнирања база података, међу којима је и нормализација.
Ово је процес организовања података у бази података да би се избегли вишкови и могуће аномалије убацивања, ажурирања или уклањања података, генерисући једноставан и стабилан дизајн концептуалног модела.
Започиње испитивањем функционалног односа или зависности између атрибута. Они описују неко својство података или однос између њих.
Нормалних облика
Нормализација користи низ тестова, који се називају нормални облици, како би се идентификовало оптимално груписање ових атрибута и на крају успоставили одговарајући скуп односа који подржавају потребе предузећа за подацима.
Односно, техника нормализације изграђена је око концепта нормалне форме, који дефинише систем ограничења. Ако однос испуњава ограничења одређеног нормалног облика, каже се да је однос у том нормалном облику.
Први нормалан облик (1ФН)
Каже се да је табела у 1ФН ако сви атрибути или поља унутар ње садрже само јединствене вредности. Односно, свака вриједност за сваки атрибут мора бити недјељива.
По дефиницији, релациона база података увек ће се нормализовати до првог нормалног облика, јер су вредности атрибута увек атомске. Сви односи у бази података су у 1ФН.
Међутим, једноставно напуштање базе података попут ове стимулира бројне проблеме, као што су сувишност и могући кварови надоградње. За исправљање ових проблема развијени су виши нормални облици.
Други нормалан облик (2ФН)
Бави се уклањањем кружних зависности из табеле. Каже се да је однос у 2ФН ако је у 1ФН, а свако не-кључно поље или атрибут у потпуности зависи од примарног кључа, или тачније, оно осигурава да табела има једну сврху.
Атрибут који није кључ је сваки атрибут који није део примарног кључа за однос.
Трећи нормалан облик (3ФН)
Бави се елиминацијом транзитивних зависности из табеле. Односно, уклоните атрибуте који нису кључни и не зависе од примарног кључа, већ од другог атрибута.
Транзитивна зависност је врста функционалне зависности у којој се вредност неког кључног поља или атрибута одређује вредност другог поља које такође није кључно.
Требали бисте потражити понављајуће вредности у атрибутима који нису кључни како бисте били сигурни да ти кључни атрибути не зависе ни од чега другог, осим од примарног кључа.
Каже се да су атрибути међусобно неовисни ако ниједан од њих функционално не зависи од комбинације других. Ова међусобна независност осигурава да се атрибути могу ажурирати појединачно, без опасности да утичу на други атрибут.
Стога, да би однос у бази података био у трећем нормалном облику, мора бити у складу са:
- Сви захтеви 2ФН.
- Ако постоје атрибути који нису повезани са примарним кључем, они морају бити уклоњени и смештени у посебну табелу, која се односи на обе табеле помоћу страног кључа. Односно, не би требало постојати било каква транзитивна зависност.
Примери трећег нормалног облика
Пример 1
Табела нека буде СТУДЕНТ, чији је главни кључ идентификација ученика (СТУДЕНТ_ИД) и састоји се од следећих атрибута: СТУДЕНТ_НАМЕ, СТРЕЕТ, ЦИТИ и ПОСТ_ЦОДЕ, који испуњавају услове да буду 2ФН.
У овом случају, СТРЕЕТ и ЦИТИ немају директни однос са примарним кључем СТУДЕНТ_ИД, јер нису директно повезани са студентом, већ у потпуности зависе од поштанског броја.
Како се студент налази на месту које одређује ЦОДЕ_ПОСТАЛ, СТРЕЕТ и ЦИТИ су повезани са овим атрибутом. Због овог другог степена зависности, није неопходно да се ови атрибути чувају у табели СТУДЕНТ.
Креирајте нову табелу
Претпоставимо да има више ученика смјештених у истом поштанском броју, при чему СТУДЕНТ таблица има огромну количину записа и потребно је промијенити назив улице или града, тада се ова улица или град мора пронаћи и ажурирати у цијелој табели УЧЕНИК.
На пример, ако требате да промените улицу „Ел Лимон“ у „Ел Лимон ИИ“, мораћете да потражите „Ел Лимон“ у целој табели СТУДЕНТА и затим је ажурирате на „Ел Лимон ИИ“.
Претраживање у огромној табели и ажурирање појединачних или вишеструких записа дуготрајно ће утицати на перформансе базе података.
Уместо тога, ови детаљи се могу чувати у посебној табели (ПОСТЦАРД) која се односи на таблицу СТУДЕНТ користећи атрибут ПОСТ_ЦОДЕ.
Табела ПОСТ ће имати релативно мање записа и ову ПОСТ табелу треба ажурирати само једном. То ће се аутоматски одразити у табели СТУДЕНТ, поједноставити базу података и упите. Дакле, таблице ће бити у 3ФН:
Пример 2
Размотрите следећу табелу са пољем Пројецт_Нум као примарним кључем и са поновљеним вредностима у атрибутима који нису кључеви.
Вриједност телефона понавља се сваки пут када се понавља име руководиоца. То је зато што телефонски број зависи само од другог степена од броја пројекта. Заиста прво зависи од руководиоца, а то заузврат зависи од броја пројекта, што чини транзитивну зависност.
Атрибут Пројецт_Манагер не може бити могући кључ у табели Пројекти јер исти менаџер управља с више пројеката. Решење за то је уклањање атрибута са поновљеним подацима (Телефон), креирање посебне табеле.
Одговарајући атрибути морају се групирати заједно, стварајући нову табелу да би се сачували. Подаци се уносе и потврђује се да поновљене вредности нису део примарног кључа. Примарни кључ поставља се за сваку табелу и, по потреби, додају се страни кључеви.
Да би се удовољио трећем нормалном облику, креирана је нова табела (Менаџери) која решава проблем. Обје табеле су повезане кроз поље Пројецт_Манагер:
Референце
- Терадата (2019). Први, други и трећи нормалан облик. Преузето са: доцс.терадата.цом.
- Туториал Цуп (2019). Трећи нормалан облик (3НФ). Преузето са: туториалцуп.цом.
- Датабасе Дев (2015). Трећи нормалан образац (3НФ) - нормализација ваше базе података. Преузето са: датабаседев.цо.ук.
- Релативни ДБ дизајн (2019). Увод у трећи нормалан облик. Преузето са: релатионалдбдесигн.цом.
- Думмиес (2019). СКЛ први, други и трећи нормалан облик. Преузето са: думмиес.цом.