Нормальная форма Бойса-Кодда (НФБК) – это фактически несколько улучшенный вариант 3НФ для ситуаций, в которых отношение имеет несколько потенциальных ключей.
На практике ЗНФ и НФБК часто являются эквивалентными, за исключением тех случаев, когда в наличии имеются следующие условия:
● отношения имеют не менее двух потенциальных ключей;
● два потенциальных ключа являются составными;
● два потенциальных ключа имеют, по крайней мере, один общий атрибут.
Рассмотрим другой пример отношения в НФБК. Отношение РАСПИСАНИЕ содержит только самые необходимые сведения: какой студенческой группе, куда и в какое время приходить. Представлены два варианта с двумя возможными ключами:
РАСПИСАНИЕ (аудитория, день, время, группа)
или
РАСПИСАНИЕ (аудитория, день, время, группа).
Очевидно, что в этом отношении возможны два составных ключа: {аудитория, день, время} и {день, время, группа}. В первом случае неключевой атрибут группа функционально зависит от всего составного ключа {аудитория, день, время}. Во втором случае такая зависимость существует между атрибутом аудитория и составным ключом {день, время, группа}. Таким образом, оба приведенных варианта отношения РАСПИСАНИЕ находятся в НФБК, т.к. неключевой атрибут полностью зависит от всего ключа.
Определение. Таблица находится в нормальной форме Бойса-Кодда (НФБК), тогда и только тогда, когда любая функциональная зависимость между её атрибутами сводится к полной функциональной зависимости от возможного первичного ключа.