Учитывая тот факт, что схема находится в 3NF, если каждый определитель является суперключом или каждый определяющий атрибут является простым, схема уже находится в 3NF. Фактически, единственными возможными ключами R
являются {A1, A2}
и {A2, A3}
. A2
должен присутствовать в каждом ключе, поскольку он не отображается ни в одной правой части зависимостей. Если вы добавите к нему A1
, вы обнаружите, что получили ключ-кандидат, поскольку A1, A2
определяет все атрибуты, и то же самое, если вы попытаетесь добавить A3
к A2
. Это неверно, если добавить A4
, A1
, A2
и A3
- простые атрибуты, и функциональная зависимость не нарушает 3NF.
Учитывая тот факт, что схема находится в BCNF, если каждая нетривиальная зависимость имеет определитель, который является суперключем, ваша схема не находится в BCNF для зависимости A3, A4 → A1
, поскольку {A3, A4}
не является суперключем.
Применяя алгоритм «анализа» для создания декомпозированной схемы в BNCF, вы можете использовать зависимость A3, A4 → A1
для декомпозиции в BCNF, и это дает два отношения:
R1 (A1, A3, A4) (with candidate key {A3, A4})
R2 (A2, A3, A4) (with candidate key {A2, A3})
Оба находятся в BCNF, поэтому дальнейшая декомпозиция не требуется, но обратите внимание, что в этом процессе зависимость A1 A2 → A3
теряется.