logo

Боице Цодд нормална форма (БЦНФ)

  • БЦНФ је напредна верзија 3НФ. Строжије је од 3НФ.
  • Табела је у БЦНФ ако је свака функционална зависност Кс → И, Кс супер кључ табеле.
  • За БЦНФ, табела треба да буде у 3НФ, а за сваки ФД, ЛХС је супер кључ.

Пример: Претпоставимо да постоји компанија у којој запослени раде у више одељења.

јава стринг за цхар

Табела ЗАПОСЛЕНИ:

ЕМП_ИД ЕМП_ЦОУНТРИ ЕМП_ДЕПТ ДЕПТ_ТИПЕ ЕМП_ДЕПТ_НО
264 Индија Дизајнирање Д394 283
264 Индија Тестирање Д394 300
364 УК Продавнице Д283 232
364 УК Развој Д283 549

У горњој табели функционалне зависности су следеће:

 EMP_ID → EMP_COUNTRY EMP_DEPT → {DEPT_TYPE, EMP_DEPT_NO} 

Кључ кандидата: {ЕМП-ИД, ЕМП-ДЕПТ}

Табела није у БЦНФ јер ни ЕМП_ДЕПТ ни ЕМП_ИД сами нису кључеви.

Да бисмо дату табелу претворили у БЦНФ, разлажемо је у три табеле:

ЕМП_ЦОУНТРИ табела:

ЕМП_ИД ЕМП_ЦОУНТРИ
264 Индија
264 Индија

ЕМП_ДЕПТ табела:

ЕМП_ДЕПТ ДЕПТ_ТИПЕ ЕМП_ДЕПТ_НО
Дизајнирање Д394 283
Тестирање Д394 300
Продавнице Д283 232
Развој Д283 549

ЕМП_ДЕПТ_МАППИНГ табела:

ЕМП_ИД ЕМП_ДЕПТ
Д394 283
Д394 300
Д283 232
Д283 549

Функционалне зависности:

 EMP_ID → EMP_COUNTRY EMP_DEPT → {DEPT_TYPE, EMP_DEPT_NO} 

Кључеви кандидата:

За први сто: ЕМП_ИД
За другу табелу: ЕМП_ДЕПТ
За трећу табелу: {ЕМП_ИД, ЕМП_ДЕПТ}

Сада, ово је у БЦНФ-у јер је леви део обе функционалне зависности кључ.