Теорията на нормални форми
4.2.Teoriya нормални форми.
4.2.1. Функционални зависимости.
Най-релационна база данни съдържа както структурно и семантично информация. Структурата на база данни се определя от броя и вида, включени в тези отношения, както и ограниченията на "едно към много" съществуваща между кортежи на връзката. В семантична част описва набор от функционални зависимости, които съществуват между атрибутите на връзката. Ние даваме на определението за функционална зависимост.
Ако се има предвид два атрибута X и Y на една връзка, ние казваме, че Y е функционално зависим от X. Ако в даден момент всяка стойност на X съответства точно една стойност Y.
Функционална зависимост обозначени X -> Y. Имайте предвид, че X и Y не може да бъде само един атрибут, но групата се състои от няколко атрибути на една връзка.
Може да се каже, че функционалната зависимост представлява вид комуникация "едно към много", съществуващ в отношенията.
Някои функционални зависимости може да е нежелателно.
Излишният функционална зависимост - зависимостта, съдържащ в себе си тази информация, която може да бъде получена на базата на други пристрастявания, налични в базата данни.
Правилно счита такава схема на база данни, при който не излишни функционални зависимости. В противен случай трябва да се прибегне до процедура на разлагане (деградация) на снимачната площадка на разположение взаимоотношения. По този начин генерира комплект съдържа по-голям брой връзки, които са проекции на първоначален набор от отношения. (Операция на издатината е описано в раздела за релационна алгебра). Смяна на посоката на поетапен процес на подмяна на даден набор от връзки с други схема елиминира излишни функционални зависимости се нарича нормализиране.
Условия обратимост изисква разпадане запазва вериги еквивалентност с една верига е заменен с друг, т.е. Получената в зависимост:- Вие не трябва да се появи по-рано в района кортежи;
- за връзката на новата схема трябва да се извършва на първоначалния набор от функционални зависимости.
4.2.2. 1NF - Първа нормална форма.
За обсъждане на първата нормална форма е необходимо да се даде две определения:
Обикновено атрибут - атрибута, чиито ценности са атомно (неделима).
Сложна атрибут - полученото съединение с атомен номер на атрибути, които могат да бъдат определени по един или различни домейни. (Наричан също вектор данни или агрегат).
Сега можете да дадете
Определяне на първата нормална форма:
съотношението е в 1NF ако всички стойности са атомни атрибути.
Помислете за този пример, взет от вече споменатите статията E.F.Kodda.
Базата данни трябва да се съхраняват данни HR информация предприятието на служители, които могат да се опитат да си представите по отношение на заетите лица (NOMER_SLUZHASCHEGO, име, дата на раждане, ISTORIYA_RABOTY, деца).
От внимателна преценка на съотношението трябва да бъде, че "istoriya_raboty" и "деца" атрибути са сложни, освен това, "istoriya_raboty" атрибут включва още един комплекс атрибут "istoriya_zarplaty".Тези единици са както следва:
Тяхната връзка е показан на фиг. 4.3.
Фигура 4.3. Първоначалната нагласа.
За да донесе на оригиналните връзки с персонала на първата нормална форма е необходимо да го разгради до четири връзки, както е показано на фигурата по-долу:
Фигура 4.4. Нормализирано набор от отношения.
Тук първичния ключ на всяка връзка се маркира със синя рамка, имената на чужди ключове, въвеждани в синьо шрифт. Спомнете си, че външни ключове се използват за представяне на функционалните връзки, които съществуват в първоначалните условия. Тези функционални връзки са обозначени с линии със стрелки.
E.F.Koddom нормализиране алгоритъм е описан, както следва:- Като се започне с връзката, разположен на върха на дървото (фиг. 4.3.), Отнема първичния ключ, и всеки директно подчинен връзка се разширява чрез вмъкване на домейн или комбинация от домени на първичния ключ.
- Първичният ключ на всеки удължен така отношения включва първичен ключ, който е бил в това съотношение да се разшири и да добавите основен ключ на връзката родител.
- След това, родителски отношения, за да изтриете всички трудни области, отстранете горния възел на дървото, и същата процедура се повтаря за всяка от останалите поддървета.
4.2.3. 2NF - втора нормална форма.
Много често първичния ключ на връзката включва редица атрибути (в този случай се нарича композитен) - виж, например, съотношението на деца, както е показано на фиг .. 4.4. По този начин идеята за пълна функционална зависимост.
не-ключов атрибут е напълно функционално зависими от ключа композитен, ако той е функционално зависим от цялата ключът към цялото, но не е функция на някой от атрибутите, които се съдържат в него.
Определяне втори нормална форма:
Ratio е в 2NF, ако е в 1NF и всеки не-ключов атрибут на напълно функционално зависими от ключа.
4.2.4. 3NF - Трети нормална форма.
Преди да обсъдим трета нормална форма е необходимо да се въведе понятието преходен функционална зависимост.
Нека X, Y, Z - три атрибути на връзка. В този случай, X -> Y и Y -> Z, но обратното
съответствие отсъства, т.е. Z - / -> Y и Y - / -> X. След Z е преходен зависи от X.
Ratio е в 3NF ако е в 2NF и всеки не-ключов атрибут непреходен зависи от първичния ключ.
4.2.5. BCNF - нормална форма Boyce-Codd.
Това нормално форма въвежда допълнително ограничение в сравнение с 3NF.
Определяне на нормалната форма на Boyce-Codd:
Ratio е в BCNF, ако е в 3NF и няма функция на първичен ключ атрибут на неключови атрибути.
Ситуацията, когато съотношението се запазва в 3NF, но не и в BCNF, е осигурен, който има съотношение на две (или повече) възможни ключове, които са съставна и имат общ атрибут. Имайте предвид, че на практика, тази ситуация е рядко, и за всички други отношения 3NF и BCNF са еквивалентни.
4.2.6. Multivalued зависимост и четвърта нормална форма (4NF).
Четвърто Normal Form отношение на връзките, в които има се повтарят набори от данни. Разлагане на базата на функционална зависимост не води до изключване на такъв излишък. В този случай, за разлагане на базата на multivalued зависимости.
Multivalued зависимостта е обобщение на функционалната зависимост и изследва съответствието между сетовете на стойностите на атрибутите.
Имайте предвид, че тези аномалии изчезват, когато нагласите на своите прогнози за промяна на учителите: актуализация аномалия се случва в този случай, тъй като по отношение на учителите са:- зависимостта на комплекта стойностите на атрибутите на програми от множество стойностите на атрибутите ИМЕ
- зависимостта UCHEBNOE_POSOBIE множество стойности на атрибути от множество стойности на името на атрибут.
Тези парцели са наречени multivalued и определени като лесно да се покаже, че в зависимост multivalued винаги образуват обвързаните двойки, така че те често са наричани Очевидно е, че всяка функционална зависимост е многозна-, но не всяка функционална зависимост се оценява.
Определяне на четвъртия нормална форма:
Съотношението е в 4NF ако е в BCNF, и там otstutsvie multivalued зависимости, които не са функционални зависимости.
4.2.7. В зависимост от съединението и петата нормална форма (5NF).
До момента имаме Предполага се, че само работата изисква да се премахнат претрупаност с уважение, се разделят на две проекции. Въпреки това, има една връзка, която не може да се разлагат без загуби на две издатини, но които могат да бъдат подложени на Lossless разлагане на три (или повече) прогнози. Този факт стана известен, в зависимост от връзката. и такава връзка се нарича 3-разгражда съотношение (ясно, че всяко съотношение може да се нарече "п-разгражда", където п> = 2).
Подробности на този въпрос тук, ние не обсъждаме (виж всички подробности. K.Deyta в книгата), ние се отбележи само, че зависимостта на връзката е обобщение на мулти-ценен зависимости. А връзка, в която има, в зависимост от връзката, които не са в същото време или много-ценен или функционална, също се характеризират с аномалии на ремонт. Поради това, концепцията за пети нормална форма.
Определяне на петия нормална форма:
Съотношението е в 5NF единствено и само ако всеки зависимост от връзката се определя само от неговите възможни ключове.