Первая нормальная форма (1NF). 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Первая нормальная форма (1NF).



Первый этап нормализации БД - назначение первичных ключей для каждой таблицы, т.е. превращение ее в отношение, проверка атрибутов таблиц на атомарность и выделение атрибутов, имеющих более одного значения, в новые сущности.

Атомарным называется атрибут, значения которого логически неделимы.

Примеры:

· Название фабрики "Красная синька" содержит два слова, которые служат названием только в этом сочетании, в то время как по частям "красная" характеризует цвет, а "синька" - изделие. Название фабрики разделению не подлежит.

· В отличие от первого примера атрибут рабочего "Сидоров Иван Петрович", содержит три части - фамилию, имя и отчество человека, которого он характеризует, т.е. должен быть разбит на три атомарных атрибута, каждый из которых может употребляться самостоятельно.

· Атрибут "Дата рождения рабочего", как и "Фамилия Имя Отчество", не является атомарным, поскольку включает в себя три понятия "Год", "Месяц" и "День". Однако в БД существуют типы данных - Date и DateTime, которые позволяют выполнять над датами специальные операции, например, < дата 1 > - < дата 2 > = < количество дней между ними >. В связи с этим значения дат в базах данных считаются атомарными.

       Таблица находится в первой нормальной форме тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и ни одно из ее ключевых полей не пусто.

БД находится в первой нормальной форме, если все ее таблицы являются отношениями, а столбцы таблиц удовлетворяют условию атомарности

В задачах часто встречаются данные, имеющие более одного значения. Примером может служить заказ на изготовление каких - либо изделий, в который вошли названия изделий, их цены и заказанное количество:

Заказ- чик

Изделие 1

Изделие 2

Изделие 3

Дата заказа

Назва- ние Цена Кол-во Назва- ание Цена Кол-во Назва- ние Цена Кол-во
                       

 

Сущность "Заказ" с атрибутами, полностью отражающими приведенную таблицу, хотя и находится в первой нормальной форме, но обладает двумя недостатками:

1. Если заказчику требуется только один или два вида изделий, в таблице окажутся пустые ячейки, что понижает коэффициент использования памяти. Для четвертого вида изделий место в заказе просто отсутствует, т.е. ему придется оформлять второй заказ. Значит, в таблице появится лишняя строка и новые пустые ячейки

2. Поиск изделий с конкретным названием усложнен, так как его приходится искать в нескольких столбцах таблицы.

Эти недостатки можно устранить одним из двух способов:

1. Разбить строку таблицы на несколько строк, в каждой из которых будет стоять только одна группа повторяющихся атрибутов (в рассмотренном примере это Название изделия, Цена, Количество);

2. Перевести повторяющиеся атрибуты в новую сущность, назначить ей первичный ключ (Код изделия) и связать с исходной сущностью ссылкой на первичный ключ последней (Номер заказа).

Итак, была сущность:

При использовании первого способа ее экземпляр будет иметь атрибуты:

В результате этого преобразования увеличилось количество строк, зато повысилась плотность записи и упростился поиск изделий.

После выделения новой сущности (второй способ преобразования), стало:



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 70; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.141.8.247 (0.004 с.)