Завершаем построение модели данных
2 Осталось немного Приведем БД в окончательное соответствие с инфологической моделью, изображенной на следующем слайде
3 ER-диаграмма Класс Фамилия Имя Пол Адрес Ученики Успеваемость Номер Кл. руков Число уч-ков Название Фамилия Имя Отчество Дата рожд-я Адрес ВУЗ Год оконч. ВУЗа Предмет Четв. оценки Год. оценка Руководят Классы Учебные предметы Учителя Преподаются Преподают Относится Входят в состав Оцениваются ММ ММ М М ER-диаграмма отображает «сущность-связь». В ромбе – имя связи В овале – атрибуты объекта М
4 Что надо добавить? Нужно добавить информацию о преподавательском составе школы. Пусть в БД требуется хранить сведения об учителях: «фамилия», «имя», «отчество», «дата рождения», «адрес проживания», «вуз» и «год окончания вуза». В БД должны содержаться сведения: какие предметы и в каких классах преподает каждый учитель.
5 Все эти данные следует разделить между двумя отношениями. Назовем их УЧИТЕЛЯ и НАГРУЗКА. В отношение УЧИТЕЛЯ будут входить только личные атрибуты учителя: учителя(код_учит, фамилия, имя, отчество, дата_рож, адрес, вуз, год_вуз)
6 Первые семь записей со сведениями об учителях:
7 Класс Фамилия Имя Пол Адрес Ученики Успеваемость Номер Кл. руков Число уч-ков Название Фамилия Имя Отчество Дата рожд-я Адрес ВУЗ Год оконч. ВУЗа Предмет Четв. оценки Год. оценка Руководят Классы Учебные предметы Учителя Преподаются Преподают Относится Входят в состав Оцениваются М М М Вернуться В ромбе – имя связи В овале – атрибуты объекта М М ММ
8 ПРОБЛЕМА! В схеме (см.) присутствует объект УЧЕБНЫЕ ПРЕДМЕТЫ, который связан с объектами УЧИТЕЛЯ и КЛАССЫ в отношении «многие-ко-многим». В инфологической модели такое возможно.(см.) Однако, строя модель данных, мы должны учитывать ограничения, которые накладываются используемой СУБД. Access не позволяет использовать в схемах данных отношения «многие-ко-многим». Допускаются лишь отношения «один-к-одному» или «один-ко-многим».
9 Решение проблемы Вместо объекта УЧЕБНЫЕ ПРЕДМЕТЫ введем в схему объект, который назовем НАГРУЗКА. Записи соответствующего отношения содержат сведения о распределении учебной нагрузки между учителями, т. е. информацию о том, какой учитель преподает в данном классе данный предмет. Структура отношения НАГРУЗКА будет следующей: нагрузка(класс, предмет, код_учит)
10 Фрагмент таблицы НАГРУЗКА, содержит информацию о распределении учебной нагрузки учителей в шести классах по трем предметам в каждом Из данных двух таблиц, например, следует, что информатику в восьмых и девятых классах преподает Жуковский Дмитрий Викторович.
11 Отношение НАГРУЗКА выполняет функцию связи между отношениями УЧИТЕЛЯ и УСПЕВАЕМОСТЬ, а также между отношениями УЧИТЕЛЯ и КЛАССЫ. Получается схема данных: КлассыНагрузкаУчителя УченикиУспеваемость
12 Между таблицами УЧИТЕЛЯ - НАГРУЗКА связь «один-ко- многим», (один учитель преподает в разных классах и не один предмет). Связь осуществляется через общее поле КОД_УЧИТ. Связь таблиц КЛАССЫ - НАГРУЗКА имеет тип «один-ко- многим», (в одном классе изучается множество предметов, но в данном классе данный предмет преподается одним учителем. Связь устанавливается через общее поле КЛАСС. КлассыНагрузкаУчителя Ученики Успеваемость
13 Итоговая БД Учителя ( Код_учит, Фамилия, Имя, Отчество, Дата_рож, Адрес, Вуз, Год_вуз ) Нагрузка ( Класс, Предмет, Код_учит ) Классы ( Класс, Клас_рук, Число_уч ) Ученики ( Класс, Номер_уч, Фамилия, Имя, Пол, Адрес ) Успеваемость ( Класс, Номер_уч, Предмет, 1_четв, 2_четв, 3_четв, 4_четв, Год )
14 Что изменим в таблицах? Таблицы УЧЕНИКИ и УСПЕВАЕМОСТЬ сохранились в прежнем виде. Клас_рук В таблице КЛАССЫ поле Клас_рук теперь содержит указание на код классного руководителя в таблице УЧИТЕЛЯ. Тип этого поля изменен с текстового на числовой. Таблица КЛАССЫ теперь имеет вид:
15 Итоговая схема данных В теории реляционных БД такая схема называется глобальной схемой данных. Глобальность в том, что схема не привязана к частным приложениям, т. е. к решению частных задач обработки данных. Но на ее основе можно решать множество конкретных задач в рамках информации, заложенной в базе данных. Такое свойство базы данных определяется как независимость от приложений.
16 Коротко о главном При построении многотабличной модели данных, реализуемой в MS Access, между таблицами устанавливаются отношения типа «один-к-одному» или «один-ко-многим». Глобальная схема данных должна обладать свойством независимости от приложений. Построенная пятитабличная модель данных позволяет реализовать многочисленные приложения (запросы) к базе данных в рамках информации, заложенной в базу данных.