Шта је транзитивна зависност у бази података

Избегавајте прелазне зависности како бисте осигурали нормализацију

Прелазна зависност у бази података је посредна веза између вриједности у истој табели која узрокује функционалну зависност . Да бисте постигли стандардни стандард Треће нормалне форме (3НФ), морате уклонити било какву транзитивну зависност.

Према својој природи, транзитивна зависност захтева три или више атрибута (или ступаца базе података) који имају функционалну зависност између њих, што значи да се колона А у табели ослања на колону Б кроз средњу колону Ц.

Да видимо како би ово могло да функционише.

Примјер транзитивне зависности

АУТОРИ

Аутхор_ИД Аутор Књига Аутхор_Натионалити
Аутх_001 Орсон Сцотт картица Ендерова игра Америка
Аутх_001 Орсон Сцотт картица Ендерова игра Америка
Аутх_002 Маргарет Атвоод Прича о слушкињи Канада

У примеру АУТОРС горе:

Али ова табела уводи транзитивну зависност:

Избегавање транзитивних зависности

Да бисмо обезбедили трећу нормалну форму, уклонимо транзитивну зависност.

Можемо почети уклањањем колоне Књиге из табеле Аутори и креирањем одвојене таблице Књиге:

КЊИГЕ

Боок_ИД Књига Аутхор_ИД
Боок_001 Ендерова игра Аутх_001
Боок_001 Деца умова Аутх_001
Боок_002 Прича о слушкињи Аутх_002

АУТОРИ

Аутхор_ИД Аутор Аутхор_Натионалити
Аутх_001 Орсон Сцотт картица Америка
Аутх_002 Маргарет Атвоод Канада

Да ли је ово поправило? Хајде да испитамо наше зависности:

БООКС табела :

АУТОРСКА табела :

Морамо додати трећу табелу за нормализацију ових података:

ДРЖАВЕ

Цоунтри_ИД Земља
Цоун_001 Америка
Цоун_002 Канада

АУТОРИ

Аутхор_ИД Аутор Цоунтри_ИД
Аутх_001 Орсон Сцотт картица Цоун_001
Аутх_002 Маргарет Атвоод Цоун_002

Сада имамо три табеле, користећи иностране кључеве за повезивање између табела:

Зашто су транзитивне зависности лоши дизајн базе података

Која је вредност избегавања транзитивних зависности како би се осигурала 3НФ? Да размотримо наш први сто и видимо проблеме које он ствара:

АУТОРИ

Аутхор_ИД Аутор Књига Аутхор_Натионалити
Аутх_001 Орсон Сцотт картица Ендерова игра Америка
Аутх_001 Орсон Сцотт картица Деца умова Америка
Аутх_002 Маргарет Атвоод Прича о слушкињи Канада

Овакав дизајн може допринијети аномалијама података и неконзистентности, на примјер:

Ово су само неки разлози због којих нормализација и избегавање транзитивних зависности штите податке и обезбеђују конзистентност.