Для того чтобы база данных находилась в 3НФ, необходимо выполнение следующих условий:
- База данных должна быть в второй нормальной форме (2НФ).
- Все неключевые атрибуты должны зависеть только от первичного ключа, исключая транзитивные зависимости.
- Поля:
id
,name
- Первичный ключ:
id
- Все атрибуты зависят только от первичного ключа.
- Поля:
id
,year
- Первичный ключ:
id
- Не содержит неключевых атрибутов, зависимых от других атрибутов.
- Поля:
id
,number
,user_count
,direction_id
,year_id
- Первичный ключ:
id
- Внешние ключи на таблицы
directions
иyears
обеспечивают целостность данных. - Все поля функционально зависят от первичного ключа.
- Поля:
id
,email
,firstname
,surname
,patronymic
,password
,university_group_id
- Первичный ключ:
id
- Внешний ключ на таблицу
university_groups
. - Все атрибуты зависят только от первичного ключа.
- Поля:
id
,town
,street
,house
- Первичный ключ:
id
- Нет зависимостей от других атрибутов.
- Поля:
id
,number
,capacity
,corpus_id
- Первичный ключ:
id
- Внешний ключ на таблицу
corpus
. - Все атрибуты зависят только от первичного ключа.
- Поля:
id
,start_time
,end_time
,user_count
,description
,auditory_id
,user_id
- Первичный ключ:
id
- Внешние ключи на таблицы
auditory
и пользователей. - Все атрибуты зависят только от первичного ключа.
Таким образом, база данных соответствует третьей нормальной форме (3НФ) по следующим причинам:
- Все таблицы имеют четко определенные первичные ключи.
- Все неключевые атрибуты функционально зависят только от своих первичных ключей и не имеют транзитивных зависимостей.
- Использование внешних ключей помогает поддерживать целостность данных и связи между таблицами без нарушения нормализации.
Эти аспекты обеспечивают эффективное управление данными и минимизируют избыточность, что является основным признаком 3НФ.