Я проверял таблицу нормализации и посмотреть, что я пришел:Согласны ли вы, что эта таблица нормализована 3NF
описать и проиллюстрировать процесс нормализации данных, представленные в этой таблице в третью нормальную формы (3NF):
BRANCH_NO(PK) BRANCH_ADDRESS TELL_NO MANAGER_ID MANAGER_NAME
B001 ADDRESS 1 TELL 1 S1500 TOM DANIELS
B002 ADDRESS 2 TELL 2 S0010 MARY MARTINEZ
B003 ADDRESS 3 TELL 3 S0145 ART PETERS
B004 ADDRESS 4 TELL 4 S2250 SALLY STEM
После thei трансформации они в конечном итоге с этих двух таблиц, которые утверждают, что они оба находятся в 3NF:
BRANCH_NO(PK) BRANCH_ADDRESS TELL_NO MANAGER_ID(FK)
B001 ADDRESS 1 TELL 1 S1500
B002 ADDRESS 2 TELL 2 S0010
B003 ADDRESS 3 TELL 3 S0145
B004 ADDRESS 4 TELL 4 S2250
и
MANAGER_ID(PK) MANAGER_NAME
S1500 TOM DANIELS
S0010 MARY MARTINEZ
S0145 ART PETERS
S2250 SALLY STEM
Я думаю, что очевидно, что первая таблица не является 3NF. Например. : tell_no зависит от branch_addres, который не является первичным ключом, но первичный ключ функционально идентифицирует branch_address, который является конфликтом с переходной функциональной зависимостью.
Как насчет минимального ключа? Вы должны согласиться с тем, что BRANCH_NO однозначно идентифицирует каждую строку. Нам всегда нужно выбрать минимальный ключ в данном соотношении. Предположим, что я выбрал BRANCH_NO, который идентифицирует все остальные атрибуты. Но с другой стороны BRANCH_ADDRESS идентифицирует TELL_NO и MANAGER_ID. – user2128702
Все ключи являются минимальными супер-ключами. Для каждого может быть более одного минимального суперкласса. В этом случае, учитывая мой предполагаемый набор зависимостей, в отношении «ветви» есть два таких ключа: BRANCH_NO и BRANCH_ADDRESS. Какой бы вы ни выбрали, как «первичный», не имеет особого значения в плане нормализации. – sqlvogel
Хорошо, скажем, что в состоянии задачи было указано, что BRANCH_NO является основным ключом таблицы? – user2128702