Целью нормальной формы Бойса-Кодда является повышение целостности данных путем организации столбцов и таблиц реляционной базы данных для достижения нормализации базы данных. Нормализация базы данных происходит, когда между таблицами установлены отношения и когда таблицы имеют определенные правила, чтобы сделать базу данных более гибкой и сохранить данные.
Целью нормализации базы данных является устранение избыточных данных и обеспечение того, чтобы зависимости данных имели смысл. База данных нормализуется, когда одни и те же данные не хранятся более чем в одной таблице и когда в таблице хранятся только связанные данные.
Происхождение нормальной формы Бойса-Кодда
Соблюдение ряда рекомендаций гарантирует нормализацию баз данных. Эти рекомендации называются нормальными формами и пронумерованы от одного до пяти. Реляционная база данных считается нормализованной, если она соответствует первым трем формам: 1NF, 2NF и 3NF.
BCNF был создан как расширение третьей нормальной формы, или 3NF, в 1974 году Рэймондом Бойсом и Эдгаром Коддом. Мужчины работали над созданием схем базы данных, которые минимизируют избыточность с целью сокращения времени вычислений. Третья нормальная форма удаляет столбцы, которые не зависят от первичного ключа, в дополнение к рекомендациям первой и второй нормальных форм. BCNF, который иногда называют 3.5NF, отвечает всем требованиям 3NF и требует, чтобы ключи-кандидаты не зависели от других атрибутов в таблице.
Во время создания BCNF Бойс был одним из ключевых разработчиков языка структурированных английских запросов, позже стандартизированного как SQL, который улучшил поиск данных с помощью реляционной модели Кодда. В этой модели Кодд утверждал, что структурная сложность баз данных может быть уменьшена, что означает, что запросы могут быть более мощными и гибкими.
Используя свои знания о реляционных базах данных, Кодд определил принципы 1NF, 2NF и 3NF. Он объединился с Бойсом, чтобы определить BCNF.
Ключи-кандидаты и BCNF
Ключ-кандидат - это столбец или комбинация столбцов в таблице, которые образуют уникальный ключ в базе данных. Комбинация атрибутов идентифицирует запись базы данных без ссылки на какие-либо другие данные. Каждая таблица может содержать несколько ключей-кандидатов, любой из которых может считаться первичным ключом. Таблица содержит только один первичный ключ.
Ключи-кандидаты должны быть уникальными.
Отношение находится в НФБК, если каждый определитель является потенциальным ключом. Рассмотрим таблицу базы данных, в которой хранится информация о сотрудниках и которая имеет атрибуты,, и..
В этой таблице поле определяет имя и фамилию. Точно так же кортеж (,) определяет.
Идентификатор сотрудника | Имя | Фамилия | Заголовок |
13133 | Эмили | Смит | Менеджер |
13134 | Джим | Смит | Партнер |
13135 | Эмили | Джонс | Партнер |
В качестве ключа-кандидата для этой базы данных используется, потому что это единственное значение, которое не может использоваться другой строкой.
FAQ
Каковы требования для нормальной формы Бойса-Кодда?
Таблица удовлетворяет требованиям нормальной формы Бойса-Кодда (BCNF), если все детерминанты являются ключами-кандидатами, а отношение находится в третьей нормальной форме (3NF). 3NF соответствует правилам для первой нормальной формы (1NF) и второй нормальной формы (2NF), и все столбцы зависят от первичного ключа.
В чем разница между четвертой нормальной формой и нормальной формой Бойса-Кодда?
Четвертая нормальная форма (4NF) - это один уровень после нормальной формы Бойса-Кодда (BCNF) в нормализации базы данных. 4NF соответствует требованиям 3NF так же, как и BCNF. Однако таблицы 4NF не имеют многозначных зависимостей или отношений «многие к одному», в то время как таблицы BCNF могут иметь такие зависимости.