Маълумотлар базаси Информа́ция


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


Download 225.37 Kb.
bet8/10
Sana25.02.2023
Hajmi225.37 Kb.
#1227847
1   2   3   4   5   6   7   8   9   10
Bog'liq
maruza-01

Первая нормальная форма(1NF). Таблица находится в перовой нормальной форме только тогда, когда в любом допустимом значении отношения каждый его кортеж содержит только одно значение для каждого из атрибутов. Есть более короткое определение: таблица находится в первой нормальной форме, когда каждый ее атрибут атомарен.
Самое главное правило первой нормальной формы – атомарность.
Атрибуты – это столбцы таблицы базы данных, а кортежи – это строки таблицы, вы можете встретить термин значение. Помните пример из предыдущей публикации? У нас была таблица, в которой был список преподавателей и списокпредметов, которые они ведут.

Таблица, которая находится в первой нормальной форме.
Эта таблица находится в первой нормальной форме(1NF), поскольку в ней находятся две записи, касающиеся преподавателя Иванова. То есть, таблица избыточна, зато она в первой нормальной форме.
Таблица не была бы в первой нормальной форме, если бы мы написали в столбце предметы для преподавателя Иванова: мат. ан., дискретная математика. Тогда таблица не была бы в первой нормальной форме – это было бы нарушение атомарности. Атомарность – это самое главное правило первой нормальной формы.
Мы знаем, что Гоголь написал «Ревизор» и «Мертвые души», как это записать в таблицу, чтобы она находилась в первой нормальной форме? Да очень просто – создаем отдельную запись для «Ревизора» и отдельную для «Мертвых душ», но тем самым мы дублируем Гоголя Н.В. и намеренно создаем избыточность данных в базе данных. Избавиться от избыточности данных нам поможет вторая нормальная форма.


ВТОРАЯ НОРМАЛЬНАЯ ФОРМА(2NF). ПРОЕКТИРОВАНИЕ БАЗ ДАННЫХ. НОРМАЛИЗАЦИЯ ОТНОШЕНИЙ В БАЗЕ ДАННЫХ. 


Идем далее и поговорим о второй нормальной форме(2NF) и о том, как нормализовать отношение до второй нормальной формы, как привести базу данных ко второй нормальной форме.
Вторая нормальная форма(2NF). Для начала напишу академическое определение. Таблица находится во второй нормальной форме, ели она находится в первой нормальной форме и при этом любой ее атрибут, не входящий в состав первичного ключа, функционально полно зависит от первичного ключа. Функционально полно означает, что атрибут зависит от всего первичного ключа, но не зависит от его какой-либо части.
Конечно, я еще не успел рассказать про ключи ключевые атрибуты, в одной из следующих публикации постараюсь это исправить. А теперь давайте разберемся с этим на первый взгляд сложным определением и с тем, как привести базу данных ко второй нормальной форме.
Теперь по-русски. Правила второй нормальной формы(2NF): у любой таблице есть ключ (ключевой атрибут), любая база данных будет работать без ключей и ключевых атрибутов, но она не будет находиться во второй нормальной форме.
Теперь давайте разберемся с функционально полной зависимостью, которая обязательна для второй нормальной формы, если вы посмотрите на таблицу, которая находится в первой нормальной форме, то увидите, что некоторые строки содержат одинаковые данные, данные дублируются.
А эти данные откуда-то должны браться, согласитесь, если мы делаем базу данных для какой-то организации, то у нас есть информация обо всех сотрудниках этой организации и эту информацию мы должны заранее определить в какую-то отдельную таблицу. Такие таблицы называются справочники баз данных или домены данных.
Для ясности перейдем к более конкретному примеру:

Нормализация отношений в базе данных. Таблица находится в первой нормальной форме.
Данная таблица находится в первой нормальной форме, в этой таблице есть два поля, которые находятся между собой в логической зависимости: Преподаватель и Дата рождения. Глядя на таблицу, мы не можем сказать, что преподаватель Сидоров родился в 1960 году, так как он родился в 1940.
То есть, дата рождения зависит от преподавателя – это функционально полная зависимость, следовательно, дату рождения нужно отправить в справочник преподавателей. Таким образом для данной таблицы мы должны создать два справочника: справочник предметов и справочник преподавателей.
Ко всему выше сказанному нужно сказать, что у каждой таблице будет ключ, однозначно идентифицирующий каждую запись, то есть первичный ключ. На примере это будет смотреться наглядней, пример базы данных во второй нормальной форме(2NF):

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

Download 225.37 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling