1.2 Сущности
Выделим три сущности: Преподаватели, Курсы, Экзамены, которые представлены на рисунке 1. В каждой сущности выделим атрибуты, т.е. свойства, признаки каждой из сущностей.
Преподаватели Курсы Экзамены
ФИО Факультет Кафедра Должность Ученая степень Адрес Телефон Дата поступления на работу Табельный номер преподавателя |
Предмет Группа Число лекционных занятий Практических занятий Лабораторных занятий Контроль Семестр Табельный номер преподавателя |
Группа Число Предмет Аудитория Семестр Табельный номер преподавателя |
Рисунок 1 – Сущности БД «Преподаватели»
Каждый преподаватель принимает экзамены у нескольких определенных групп и эти группы сдают экзамены по определенному предмету только одному преподавателю. Связь «один ко многим».
1.3 Нормализация
Приведение к 1НФ.
1 требование (требование простой структуры). Каждую сущность с атрибутами представила в виде множества строк. Объединённых ячеек нет.
2 требование (отсутствие одинаковых по смыслу полей). Повторяющихся полей нет.
3 требование (отсутствие составных полей). В первой сущности Преподаватели разбил ФИО на две составляющие – Фамилия и Имя Отчество, т.к. для поиска преподавателя не обязательно знать его ИО.
4 требование (в табл. не должно быть одинаковых записей). В таблице нет одинаковых записей.
С учётом данных требований получаем таблицы вида, которые представлены на рисунке 2.
Табельный номер |
Фамилия |
ИО |
Кафедра |
Факультет |
Должность |
Ученая степень |
Адрес |
телефон |
Дата поступления на работу |
Предмет |
Группа |
Лекции |
Практика |
Лабораторные |
Контроль |
№ семестра |
Табельный номер |
Группа |
Число |
предмет |
Аудитория |
№ семестра |
Табельный номер |
Рисунок 2 – Приведение к 1НФ.
Приведение ко 2НФ.
Выписываем атрибуты каждой сущности Преподаватели, Курсы, Экзамены.
Определяем у каждой сущности первичный ключ. Сущность Преподаватели первичный ключ табельный номер. Курсы – ID предмета. Экзамены – ID экзамена.
Т.к. для некоторых атрибутов удобнее выделить ID, поэтому ID выделяем для следующих атрибутов: кафедра, факультет, ученая степень, город, предмет, группа, контроль, экзамен.
Таблица Кафедра с таблицей Преподаватели имеет связь «один ко многим», т.к. у каждой кафедры может быть несколько преподавателей, а у каждого преподавателя только одна кафедра.
Таблица Ученая степень с таблицей Преподаватели имеет связь «один ко многим», т.к. одну ученую степень могут иметь сразу несколько преподавателей, но каждый преподаватель имеет только одну ученую степень.
Таблица Группы с таблицей Курсы имеет связь «один ко многим», т.к. у каждой группы может быть несколько курсов, но определенный курс может быть только у одной группы.
Таблица Преподаватели с таблицей Экзамены имеет связь «один ко многим», т.к. каждый преподаватель принимает один и тот же экзамен несколько раз у нескольких групп, но этот экзамен только у одного преподавателя.
Остальные таблицы связаны аналогично.
Приведение к 3НФ.
Т.к. транзитивных зависимостей нет, то 2НФ является и 3НФ.
С учётом всех пунктов получим таблицу следующего вида, показанная на рисунке 3.
Рисунок 3 – Нормализация БД.
