Курсовая работа: Создание журнала посещаемости занятий
Рисунок 1. Схема БД журнала посещаемости занятий.
1.2 Ограничения ведения базы данных
В процессе ведения БД необходимо поддерживать соответствия (целостность) между введенными данными на основе требований обусловленных предметной областью.
Для рассмотренной задачи определим соответствия между атрибутами:
1. Тип занятий и предмет определяет преподавателя;
2. Преподаватель определяет кафедру;
3. ФИО, дата, предмет, тип занятий определяют признак посещаемости;
Таким образом, каждый тип занятий по одному предмету должен вести один преподаватель. Преподаватель относится к одной кафедре. Если студент в определенное время был на определенном предмете, значит он не мог не быть, он был. Подобным образом поддержка соответствий должна быть реализована для каждого заданного ограничения.
Кроме этого, хранение данных в одной таблицы при заданных ограничениях является избыточной.
Так, например, фамилии будут повторятся столько раз, сколько данный студент посещал предметы, дата будет повторятся столько раз, сколько в данный день было проведено занятий, предметы будут повторятся в зависимости от типа занятий.
Структура БД, состоящая из одной таблицы, как представлена на рисунке 1, не дает возможность сохранять все данные.
1.3 Постановка задачи
Проведенный анализ предметной области показал, что ведение данных в одной таблице не отвечает некоторым требованиям, предъявляемым к реляционным БД по причине, описанным в предыдущем разделе.
Таким образом, для решения задачи посещаемости занятий необходимо представить ее структуру в виде нескольких таблиц, каждая, из которой содержит отдельный факт предметной области.
Например, информация о преподавателе (ФИО, кафедра), о загрузке преподавателя (тип занятий , предмет, преподаватель), и о признаке посещаемости (тип занятий, предмет, ФИО, дата, признак). При этом БД должна представлять собою целостную систему, то есть пользователь должный иметь возможность в любой момент времени получить всю (любую) информацию, которая хранится в БД.
2. Проектирование структуры базы данных.
база данное аccess журнал
2.1 Определение функциональных зависимостей
На основании рассмотренных требований к БД (раздел 1.2) и поставленной задачи (раздел 1.3) формализуем ограничения на данные в виде функциональных зависимостей.
1. Тип занятий, предмет ® Преподаватель
2. Предмет® Кафедра
3. ФИО, дата, предмет, тип занятий ® Признак посещаемости
2.2 Разработка структуры базы данных
Для исключения возможных аномалий описанных в разделе 1.2 необходимо нормализовать БД, то есть привести ее к нормальной форме. Заданные ограничения в виде функциональных зависимостей (раздел 2.1.) позволяют построить третью нормальную форму (3НФ), которая устранит нежелательные свойства ведения БД.
Очевидно, что представленный набор атрибутов (рисунок 1) соответствует первой нормальной форме (1НФ). Воспользуемся определением полной функциональной зависимости [1,2] и построим вторую нормальную форму (2НФ).
Таким образом, БД будет иметь вид представленный на рисунке 2.
Таблица 2 Таблица 1 Таблица 3
Преподаватель | ![]() | ![]() | 1 ¥ | Тип занятий |
Кафедра |
¥ | ![]() | 1 ¥ | Предмет |
Преподаватель | Фамилия | |||
Имя | ||||
Отчество | ||||
Дата | ||||
![]() | Признак |
Рисунок 2. Структура БД в 2НФ.