Една релация е в 3НФ, ако не съдържа повтарящи се групи, няма частична функционална зависимост и няма транзитивна функционална зависимост
За преобразуване на релация с транзитивна зависимост в 3НФ, се премахват атрибутите, които въвеждат транзитивната зависимост и се поставят в нова релация
Правило: една релация във 2НФ със само един неключов атрибут е в 3НФ
Обобщение: 3НФ (2)
Д. Гоцева
БД-лекции
В нормализираните релации неключово поле трябва да дава информация за ключа и то само за него като едно цяло!
Релации в 3НФ са достатъчни за решаване на повечето практически проблеми в БД. 3НФ не гарантира обаче премахване на всички аномалии.
R(a,b,c,d)
c -> d
става
R(a,b,c)
R1(c,d)
Boyce-Codd Normal Form (BCNF)
Д. Гоцева
БД-лекции
Когато релацията има >1 кандидат ключа, аномалии могат да се получат дори при релации в 3НФ.
3NF не е достатъчна когато имаме релация с припокриващи се кандидат ключове
Припокриващи се кандидат ключове – съставен кандидат ключ, които имат поне един общ атрибут.
BCNF е базирана на концепцията на детерминанта.
Детерминант – произволен атрибут (прост или съставен), от който някои други атрибути са напълно функционално зависими.
Една релация е в BCNF тогава и само тогава, когато всяка детерминанта е кандидат ключ.