Вишеструка зависност преломи четврту нормалну форму
У релационој бази података, зависност се јавља када информације које се чувају у истој табели базе података јединствено одређују друге информације које се чувају у истој табели. Мултивалентна зависност се јавља када присуство једног или више редова у табели подразумева присуство једног или више других редова у истој табели. Ставите други начин, два атрибута (или колона) у табели су независна једни од других, али обоје зависе од трећег атрибута.
Мултивалентна зависност спречава нормализацију стандардног четвртог нормалног облика (4НФ). Релацијске базе података прате пет стандардних формулара који представљају смернице за дизајн записа. Они спречавају аномалије ажурирања и недоследности у подацима. Четврти уобичајени облик бави се односом многих са једним у бази података .
Функционална зависност у односу на вишеструку зависност
Да би се разумела зависност од вишеструког значаја, корисно је поновно истражити каква је функционална зависност.
Ако атрибут Кс јединствено одређује атрибут И, онда је И функционално зависио од Кс. Ово је написано као Кс -> И. На пример, у Табели Студенти испод, Студент_Наме одређује главног:
| Име студента | Главни |
|---|---|
| Рави | Историја уметности |
| Бетх | Хемија |
Ова функционална зависност може бити написана: Студент_Наме -> Мајор . Сваки Студент_Наме одређује тачно један Мајор и више.
Ако желите да база података такође прати спорт који ученици узимају, можда мислите да је најлакши начин да то урадите само да додате нову колону под називом Спорт:
| Име студента | Главни | Спорт |
|---|---|---|
| Рави | Историја уметности | Фудбал |
| Рави | Историја уметности | Одбојка |
| Рави | Историја уметности | Тенис |
| Бетх | Хемија | Тенис |
| Бетх | Хемија | Фудбал |
Проблем је у томе што и Рави и Бетх играју више спортова. Неопходно је додати нови ред за сваки додатни спорт.
Ова табела је увела вишенаменску зависност јер су главни и спорт независни једни од других, али обоје зависе од ученика.
Ово је једноставан примјер и лако се може препознати, али вишеструка зависност може постати проблем у великој, сложеној бази података.
Вишестукована зависност је написана Кс -> -> И. У овом случају:
Студент_Наме -> -> Мајор
Студент_Наме -> -> Спорт
Ово се чита као "Студент_Наме мултидетерминес Мајор" и "Студент_Наме мултидетерминес Спорт".
Вишестукована зависност увек захтева најмање три атрибуте, јер се састоји од најмање два атрибута који зависе од трећине.
Вишеструка зависност и нормализација
Табела са вишенамјенском зависношћу крши стандардизацију стандарда Четвртог нормалног облика (4НК), јер ствара непотребне технолошке вишкове и може допринијети неконзистентним подацима. Да би ово довело до 4НФ, неопходно је прекинути ове информације у двије табеле.
Доња табела сада има функционалну зависност Студент_Наме -> Мајор и без вишенаменских зависности:
| Име студента | Главни |
|---|---|
| Рави | Историја уметности |
| Рави | Историја уметности |
| Рави | Историја уметности |
| Бетх | Хемија |
| Бетх | Хемија |
Иако ова табела има и једну функционалну зависност Студент_Наме -> Спорт:
| Име студента | Спорт |
|---|---|
| Рави | Фудбал |
| Рави | Одбојка |
| Рави | Тенис |
| Бетх | Тенис |
| Бетх | Фудбал |
Јасно је да се нормализацији често решава поједностављењем сложених табела, тако да садрже информације везане за једну идеју или тему, а не покушавају направити једну таблицу која садржи превише различитих информација.