Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IT_pasha_2.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
110.59 Кб
Скачать

3. Нормализация

3.1 Приведение к 1нф

  1. Требование простой структуры. Каждую сущность с атрибутами представлена в виде множества строк. Объединённых ячеек нет.

  2. Требование отсутствия одинаковых по смыслу полей. Повторяющихся полей нет. Поля с датами имеют отношения к разным событиям.

  3. Требование отсутствия составных полей. В сущности «Работа» было исправлено поле «Предприятие» (разбито на поля «Название предприятия», «адрес предприятия», «город предприятия»). В сущности «Сотрудник» было исправлено поле «адрес проживания» (разбито на поля «город проживания», «адрес проживания»). В сущности «образование» было исправлено поле «адрес учебного заведения» (разбито на поля «адрес учебного заведения», «город учебного заведения»).

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

Сотрудник Работа

№ паспорта

Предприятие

Адрес предприятия

Город предприятия

Должность

Дата найма

Дата увольнения


ФИО

Дата рождения

Место рождения

Адрес проживания

Город проживания

Домашний телефон

Почтовый индекс

№ паспорта


Образование

№ паспорта

Название учебного заведения

Город учебного заведения

Адрес учебного заведения

Начало учебы

Окончание учебы

Специальность

Квалификация


Первая нормальная форма

3.2 Приведение ко 2нф

1 шаг.

Определим для каждой сущности первичный ключ:

Сотрудник — № паспорта.

Работа — составной PK, состоящий из двух полей «№ паспорта» и «предприятие».

Образование — составной PK, состоящий из двух полей «№ паспорта» и «Название учебного заведения».

2 шаг.

От номера паспорта зависят ФИО, дата рождения, место рождения, адрес проживания, город проживания, домашний телефон, почтовый индекс, номер трудовой книжки.

В сущности «Работа» от номера паспорта и названия предприятия зависят поля должность, дата найма, дата увольнения, а от предприятия зависят адрес предприятия, и город предприятия.

В сущности «Образование» от номера паспорта и название учебного заведения зависят поля начало и окончание учёбы, специальность, квалификация, адрес и город.

3шаг.

Для удобства обращения с БД создадим таблицу городов с семантически незначащим ключом «код города» и заменим поля «Город проживания», «Город предприятия», «Город учебного заведения» на поле «код города» в каждой сущности.

Введём для таблиц предприятие и учебное заведение, семантически незначащие ключи «код предприятия» и «код учебного заведения» соответственно.

Составным ключом в таблице «Образование» будут поля № паспорта и код учебного заведения, составным ключом в таблице «работа» будут поля № паспорта и код предприятия.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]