Проектирование базы данных
Вид материала | Документы |
- 1 научиться создавать таблицу базы данных в режиме таблицы, 54.71kb.
- Проектирование базы данных, 642.58kb.
- Методические указания к курсовому проектированию по курсу "Базы данных" Москва, 654.27kb.
- Лекция Проектирование базы данных, 227.73kb.
- Ms access Создание базы данных, 34.31kb.
- Лекция 2 10. Полнотекстовые базы данных, 133.46kb.
- Практическая работа № «Создание базы данных», 21.96kb.
- Информационные системы, использующие базы данных: оборудование, программное обеспечение,, 102.98kb.
- Конспект лекций по курсу "базы данных" (Ч., 861.92kb.
- Реферат на тему: Access. Базы данных, 274.77kb.
Глава 2
ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
База данных СУБД Access является реляционной базой данных. Такая база данных состоит из взаимосвязанных реляционных таблиц. Реляционная таблица является простейшей двумерной таблицей, состоящей из однотипных строк (записей). Структура таблицы определяется совокупностью столбцов (полей), типом и размером данных каждого столбца, а также уникальным ключом таблицы. Значения уникального (первичного) ключа не могут повторяться в записях таблицы. Строки таблицы однозначно идентифицируются значением ключа. Ключ может быть простым, состоящим из одного поля, или составным. Логические связи между таблицами в реляционной базе данных реализуются за счет одинаковых полей в связываемых таблицах.
Перед созданием базы данных Access пользователь должен определить, из каких таблиц должна состоять база данных, какие данные нужно поместить в каждую таблицу, как связать таблицы. Такие вопросы решаются на этапе проектирования базы данных.
В результате проектирования должна быть определена логическая структура базы данных, т. е. состав реляционных таблиц, их структура и межтабличные связи.
Этапы проектирования и создания базы данных
Перед созданием базы данных необходимо располагать описанием выбранной предметной области, которое должно охватывать реальные объекты и процессы, иметь всю необходимую информацию для удовлетворения предполагаемых запросов пользователя и определять потребности в обработке данных.
На основе такого описания на этапе проектирования базы данных осуществляется определение состава и структуры данных предметной области, которые должны находиться в базе данных и обеспечивать выполнение необходимых запросов и задач пользователя. Структура данных предметной области может отображаться информационно-логической моделью. На основе этой модели легко создается реляционная база данных. При разработке модели данных могут использоваться два подхода. В первом подходе сначала определяются основные задачи, для решения которых строится база, и выявляются потребности задач в данных. При втором подходе сразу устанавливаются типовые объекты предметной области. Наиболее рационально сочетание обоих подходов. Это связано с тем, что на начальном этапе, как правило, нет исчерпывающих сведений обо всех задачах. Использование такой технологии тем более оправдано, что гибкие средства создания реляционной базы данных в Access позволяют на любом этапе разработки внести изменения в базу данных и модифицировать ее структуру без ущерба для введенных ранее данных.
В процессе разработки модели данных необходимо выделить информационные объекты, соответствующие требованиям нормализации данных и определить связи между ними. Эта модель позволяет создать реляционную базу данных без дублирования, в которой обеспечивается однократный ввод данных при первоначальной загрузке и корректировках. В такой базе данных Access обеспечивает целостность данных при внесении изменений. При определении логической структуры реляционной базы данных на основе модели каждый информационный объект адекватно отображается реляционной таблицей, а связи между таблицами соответствуют связям между информационными объектами.
В процессе создания базы данных Access сначала осуществляется конструирование таблиц, соответствующих информационным объектам построенной модели данных. Далее может создаваться схема данных Access, в которой фиксируются существующие логические связи между таблицами. Эти связи соответствуют связям информационных объектов. В схеме данных могут быть заданы параметры обеспечения целостности базы данных, если модель данных была разработана в соответствии с требованиями нормализации. Целостность данных означает, что в базе данных установлены и корректно поддерживаются взаимосвязи между записями разных таблиц при загрузке, добавлении и удалении записей в связанных таблицах, а также при изменении значений ключевых полей.
После формирования в Access схемы данных осуществляется ввод данных, содержащихся в документах предметной области.
Этапы проектирования и создания базы данных Access иллюстрирует схема приведенная на рис. 2.1
Р
ис. 2.1 Этапы проектирования и создания базы данных Access
Построение информационно-логической модели данных
Информационно-логическая модель (ИЛМ) отображает данные предметной области в виде совокупности информационных объектов и связей между ними. Эта модель представляет данные, подлежащие хранению в базе данных.
Информационные объекты
Информационный объект — это информационное описание некоторой сущности — реального объекта, процесса, явления или события. Информационный объект образуется совокупностью логически взаимосвязанных реквизитов, представляющих качественные и количественные характеристики некоторой сущности предметной области. Примерами информационных объектов могут быть — ТОВАР, ПОСТАВЩИК, ЗАКАЗЧИК, ПОСТАВКА, ОТГРУЗКА, СОТРУДНИК, ОТДЕЛ, СТУДЕНТ, ПРЕПОДАВАТЕЛЬ, КАФЕДРА и т. п.
Информационные объекты выделяются на основе описания предметной области путем определения функциональных зависимостей между реквизитами. Совокупность реквизитов информационного объекта должна отвечать требованиям нормализации.
Каждому информационному объекту нужно присвоить уникальное имя, например, СТУДЕНТ, ПРЕДМЕТ, ПРЕПОДАВАТЕЛЬ, КАФЕДРА.
Информационный объект имеет множество реализаций — экземпляров. Например, каждый экземпляр объекта СТУДЕНТ представляет конкретного студента. Экземпляр образуется совокупностью конкретных значений реквизитов и должен однозначно определяться (идентифицироваться) значением ключа информационного объекта, который состоит из одного или нескольких ключевых реквизитов. Таким образом реквизиты подразделяются на ключевые и описательные. Последние являются функционально зависимыми от ключа.
Функциональная зависимость реквизитов имеет место в том случае, если одному значению ключа соответствует только одно значение описательного (зависимого) реквизита.
Замечание. При выявлении функциональных зависимостей реквизитов не рассматриваются арифметические зависимости (например, стоимость от количества), поскольку устанавливается только функциональная зависимость, определяющая связи описательных и ключевых реквизитов, и на основе которой выявляется реквизитный состав каждого информационного объекта.
При графическом изображении модели данных каждый информационный объект представляется прямоугольником с обозначением его имени и идентификатора-ключа. Пример такого изображения для информационных объектов ТОВАР и ПОСТАВКА показан на рис. 2.2. Здесь KODT (код товара) — простой ключ объекта ТОВАР, a KODT+KPOST (код поставщика) — составной ключ объекта ПОСТАВКА.
ТОВАР
KODT
ПОСТАВКА
KODT+KPOST
Реквизиты каждого информационного объекта должны отвечать требованиям нормализации:
- информационный объект должен содержать уникальный идентификатор (ключ);
- Ключ является простым, если он состоит из одного реквизита или составным, если из нескольких.
- все описательные реквизиты должны быть взаимонезависимы, т. е. между ними не может быть функциональных зависимостей;
- все реквизиты, входящие в составной ключ, должны быть также взаимонезависимы;
- каждый описательный реквизит должен функционально - полно зависеть от ключа, т. е. каждому значению ключа соответствует только одно значение описательного реквизита;
- при составном ключе описательные реквизиты должны зависеть целиком от всей совокупности реквизитов, образующих ключ;
каждый описательный реквизит не может зависеть от ключа транзитивно, т. е. через другой промежуточный реквизит. Замечание. В случае транзитивной зависимости между реквизитами можно выполнить расщепление совокупности реквизитов с образованием двух информационных объектов вместо одного. Выполнение требований нормализации обеспечивает построение реляционной базы данных без дублирования данных и возможность поддержки целостности при внесении изменений.
Выделение информационных объектов предметной области
Процесс выделения информационных объектов предметной области, отвечающих требованиям нормализации, может производиться на основе интуитивного или формального подхода. Теоретические основы формального подхода были разработаны и полно изложены в монографиях по организации баз данных известного американского ученого Дж. Мартина. При интуитивном подходе легко могут быть выявлены информационные объекты, соответствующие реальным объектам. Однако, получаемая при этом информационно - логическая модель, как правило, требует дальнейших преобразований, в частности, преобразования много - многозначных (M:N) связей между объектами. При таком подходе возможны существенные ошибки, если отсутствует достаточный опыт. Последующая проверка выполнения требований нормализации обычно приводит к необходимости уточнения информационных объектов. Рассмотрим формальные правила, которые могут быть использованы для выделения информационных объектов, отвечающих требованиям нормализации:
- На основе описания предметной области выявить документы и их реквизиты, подлежащие хранению в базе данных. Определить функциональные зависимости между реквизитами.
Замечание. Функциональную зависимость реквизитов можно изобразить графически в виде линий со стрелками, идущих от ключевого реквизита к описательному (зависимому). Эти зависимости целесообразно отразить непосредственно в таблице, где представлен состав реквизитов, сгруппированных по документам.
- Выбрать все зависимые реквизиты и указать для них ключевые реквизиты (один или несколько).
Замечание. В случае транзитивной зависимости некоторые реквизиты являются одновременно зависимыми и ключевыми и соответственно представлены в группе зависимых и ключевых.
- Сгруппировать реквизиты, зависимые от одних и тех же ключевых реквизитов. Полученные группы зависимых реквизитов вместе с ключевыми реквизитами образуют информационные объекты.
После выделения информационных объектов надо дать окончательное их описание. В таком описании может быть представлена также семантика информационных объектов, то есть их смысловое определение. Затем можно осуществить контрольную проверку выполнения требований нормализации.
При использовании приведенных правил нет необходимости отдельно преобразовывать транзитивные зависимости реквизитов. Совокупность получаемых при этом информационных объектов позволяет получить информационно-логическую модель, не требующую дальнейших преобразований для построения реляционной базы данных. Как правило, сразу оказываются выделенными объекты, выполняющие роль связки между объектами, находящимися в много - многозначных отношениях.
Примеры выделения информационных объектов
Рассмотрим выделение информационных объектов на примере предметной области "Учебный процесс".
Описание предметной области.
Пусть необходимо построить базу данных, содержащую информацию об учебном процессе текущего семестра:
• списки студентов групп,
• перечень изучаемых предметов,
• преподавательский состав кафедр, обеспечивающих учебный процесс,
• сведения о лекционных и практических занятиях в каждой из групп,
• результаты сдачи экзаменов (зачетов) по каждому из проведенных занятий.
В результате анализа предметной области выявляются документы-источники данных для создания базы данных.
Документы справочной информации. Справочная информация содержится в документах: "Список студентов группы", "Список преподавателей кафедры", "Список изучаемых предметов". На рис. 2.3, 2.4 приведены примеры форм справочных документов.
Список студентов группы № __________
Номер студента | Фамилия | Год рождения | Адрес | Балл при поступлении |
| | | | |
| | | | |
Количество студентов /расч/
Средний балл в группе при поступлении /расч/
Рис. 2.3. Форма документа со списком студенте»
Список преподавателей кафедры
Название кафедры ____________________
Код кафедры ______ Телефон ______________
Заведующий _________________________
Таб. Номер | Фамилия | Уч. Степень | Уч. звание |
| | | |
| | | |
Рис. 2.4. Форма документа со списком преподавателей
Документы учетной информации. Учетная информация по учебному процессу может быть представлена в планах проведения занятий в группах на текущий семестр, содержащих перечень изучаемых предметов с часами лекционных и практических занятий, а также в заполненных экзаменационных ведомостях (рис. 2.5, 2.6).
План проведения занятий в группе
Группа №________ семестр ________/текущий/
Наименование предмета | Код предмета | ФИО преподавателя | Таб. Номер преподавателя | Вид занятий | Часы |
| | | | | |
| | | | | |
| | | | | |
Рис. 2.5. Форма документа с перечнем предметов текущего семестра
Экзаменационная ведомость
Название предмета_____________ Группа _______________
Преподаватель ________________
Вид сдачи _________ Дата _____________
№ п/п | ФИО студента | Оценка | Подпись преподавателя |
| | | |
| | | |
Рис. 2.6. Форма документа-бланка экзаменационной ведомости
Заметим, что документы предметной области не только дают возможность выявить структуру данных, но также являются основой для разработки форм ввода-вывода (см. главу 4) и отчетов (см. главу 6).
Выделение объектов справочной информации
CJ Определим функциональные зависимости между реквизитами документа "Список преподавателей кафедры", предварительно включив их перечень в таблицу (см. табл. 2.1). Из анализа документа очевидно, что реквизиты Название кафедры (НКАФ), Телефон (ТЕЛ), Заведующий (ЗАВ) являются описательными, и каждый из них зависит только от ключевого реквизита — Код кафедры (ККАФ), который в то же время выполняет роль общего идентификатора списка преподавателей кафедры.
Реквизиты — Фамилия И.О. (ФИО), Уч. степень (СТ), Уч. звание (3В) однозначно определяются ключевым реквизитом Таб. номер (ТАБН) преподавателя.
Обратим внимание на связь реквизитов ККАФ и ТАБН. В этой функциональной связи выполняется необходимое условие — одному значению ключа ТАБН соответствует одно значение зависимого реквизита ККАФ. Этот реквизит играет роль описательного реквизита для преподавателя. Если такая связь не установлена, то все множество реквизитов документа разделится на два не связанных между собой подмножества, а это нелогично для реквизитов одного документа.
Все установленные функциональные зависимости реквизитов документа "Список преподавателей кафедры" отражены в табл. 2.1.
Т
аблица 2.1. Функциональная зависимость реквизитов
Внимание! Реквизит ККАФ одновременно выступает в роли описательного реквизита в одной связи и ключевого — в другой связи. Таким образом здесь мы сталкиваемся с транзитивной зависимостью. Реквизит НКАФ транзитивно зависит от ТАБН через ККАФ. Тем не менее специальных действий по расщеплению этой зависимости не потребуется при использовании приведенных правил.
О Выберем по функциональным связям реквизиты, зависимые от каких либо других реквизитов и укажем для них ключевые реквизиты.
Так при просмотре списка реквизитов сверху находим первый зависимый (описательный) реквизит ККАФ и устанавливаем его ключевой ТАБН. Далее находим второй зависимый (описательный) реквизит НКАФ и устанавливаем его ключевой ККАФ. Аналогично находим описательный ТЕЛ и устанавливаем его ключевой ККАФ и так далее. Выявленное соответствие описательных и ключевых реквизитов представлено ниже в таблице.
Таблица 2.2. Соответствие описательных и ключевых реквизитов документа "Список преподавателей кафедры"
Описательные (зависимые) реквизиты | Ключевые реквизиты |
ККАФ | ТАБН |
НКАФ | ККАФ |
ТЕЛ | ККАФ |
ЗАВ | ККАФ |
ФИО | ТАБН |
СТ | ТАБН |
ЗВ | ТАБН |
- Сгруппируем реквизиты, зависимые от одних и тех же ключевых реквизитов, и объединим их с ключевыми реквизитами в один информационный объект. Результат группировки реквизитов документа "Список преподавателей кафедры" приведен в табл. 2.3.
Т
аблица 2.3. Группировка реквизитов по информационным объектам документа "Список преподавателей кафедры"
П - простой, У- уникальный
Таким образом на основе анализа документа "Список преподавателей кафедры" выделены два информационных объекта — КАФЕДРА и ПРЕПОДАВАТЕЛЬ.
Замечание. Если связь реквизитов ККАФ и ТАБН не была бы выявлена на стадии анализа (см. табл. 2.1), реквизит ККАФ пришлось бы добавить в объект ПРЕПОДАВАТЕЛЬ для обеспечения связей объектов в реляционной базе.
Аналогично рассмотренному выше может быть выполнен анализ документа "Список студентов группы" и будут выделены другие объекты справочной информации — ГРУППА, СТУДЕНТ. Объект ГРУППА характеризуется числом студентов в группе, средним проходным баллом. Для однозначной идентификации группы используется ее номер.
Замечание. К описательным реквизитам группы могут быть отнесены в общем случае и другие реквизиты, например, факультет, к которому относится группа, специальность, по которой ведется обучение группы, фамилия старосты и т. п.
Объект СТУДЕНТ имеет описательные реквизиты: фамилию, год рождения, адрес проживания. Для идентификации студента может быть выбрана фамилия. Однако, учитывая возможность повторений, лучше в качестве идентификатора студента в группе рассматривать его порядковый номер в списке группы. Тогда для уникальной идентификации среди всех студентов ВУЗа можно использовать составной ключ из номера группы и порядкового номера в группе. Такой идентификатор позволяет в то же время явно определить принадлежность студента к группе.
К объектам справочной информации относится также информационный объект ПРЕДМЕТ, который легко выявляется на основе интуитивного подхода.
Информационный объект ПРЕДМЕТ характеризуется наименованием, общим количеством часов, количеством часов лекций, практических занятий, числом семестров и т. п. В качестве идентификатора предмета вместо наименования целесообразно ввести уникальный код предмета. Это облегчит реализацию в базе данных связей этого объекта с другими, в которых необходима ссылка на предмет. Учитывая возможности Access, можно предусмотреть хранение в базе данных для предмета текста программы курса.
Описание информационных объектов, которые наряду с объектами ПРЕПОДАВАТЕЛЬ и КАФЕДРА относятся к справочной информации, представлено в табл. 2.4.
Таким образом вся совокупность объектов справочной информации представлена в табл. 2.3, 2.4.
Выделение объектов учётной информации.
Документ "План проведения занятий в группе" (рис. 2.5) содержит сведения о занятиях, проводимых в каждой группе в текущем семестре. ЧАСЫ — это основная количественная характеристика занятия, т. е. описательный реквизит. Соответственно он является реквизитом, зависимым от идентификаторов занятия: номера группы, кода изучаемого предмета, идентификатора преподавателя и вида занятий, т. к. учёт ведется отдельно по лекциям и практическим занятиям.
Таблица 2.4. Объекты справочной информации о студентах и предметах
Информационный объект | Название реквизита | Обозначение реквизита | Признак ключа |
ГРУППА | Номер группы | НГ | Уникальный простой ключ |
Кол-во студентов | КОЛ | | |
Средний балл в группе | ПБАЛЛ | | |
СТУДЕНТ | Номер группы | НГ | Уникальный составной ключ |
Номер студента | НС | ||
Фамилия И.О. | ФИО | | |
Год рождения | ГОДР | | |
Адрес | АДРЕС | | |
Балл при поступлении | ПБАЛЛ | | |
ПРЕДМЕТ | Код предмета | КП | Уникальный простой ключ |
Название предмета | НП | | |
Всего часов | ЧАСЫ | | |
Часов лекций | ЛЕК | | |
Часов практики | ПР | | |
Число семестров | ЧС | | |
Программа курса | ПРОГ | Большой текст |
Кроме того к описательным реквизитам занятия можно отнести расчетный реквизит — средний балл в группе по занятию, если его хранить в базе данных. В результате анализа взаимосвязей реквизитов этого документа можно выделить новый информационный объект ИЗУЧЕНИЕ.
На основе анализа документа "Экзаменационная ведомость" может быть выделен другой объект учетной информации — УСПЕВАЕМОСТЬ.
Полный состав объектов учетной информации представлен в табл. 2.5.
Информационный объект | Название реквизита | Обозначение реквизита | Признак ключа |
ИЗУЧЕНИЕ | Номер группы | НГ | Уникальный составной ключ |
Код предмета | КП | ||
Таб. номер преподавателя | ТАБН | ||
Вид занятия | ВИДЗ | ||
Часы занятия | ЧАСЫ | | |
Средний балл группы по предмету /расч./ | СРБАЛЛ-ГР | | |
УСПЕВАЕМОСТЬ | Номер группы | НГ | Уникальный составной ключ |
Номер студента | НС | ||
Код предмета | КП | ||
Таб. Номер преподавателя | ТАБН | ||
Вид занятий | ВИДЗ | ||
Оценка | ОЦЕНКА | |
Таблица 2.5. Объекты учетной информации
Информационный объект УСПЕВАЕМОСТЬ обеспечивает хранение в базе данных информации об итоговых оценках студента за семестр по каждому виду занятия, отображенному в объекте ИЗУЧЕНИЕ. Соответственно такая оценка определяется с одной стороны идентификатором студента (НГ+НС), а с другой стороны идентификатором занятия (НГ+КП+ТАБН+ВИДЗ). Таким образом их объединение образует уникальный идентификатор объекта УСПЕВАЕМОСТЬ.
Связи информационных объектов
Следующим шагом проектирования после выявления информационных объектов является определение связей между ними. Связь устанавливается между двумя информационными объектами. Связи, как правило, определяются природой реальных объектов, процессов или явлений, отображаемых этими информационными объектами.
Связи между объектами существуют, если логически взаимосвязаны экземпляры этих информационных объектов.
Тип связи информационных объектов
Связи информационных объектов могут быть разного ММ;
• одно - однозначные (1:1),
• одно - многозначные (1:М),
• много - многозначные (M:N).
Одно-однозначные связи (1:1) имеют место, когда каждому экземпляру первого объекта (А) соответствует только один экземпляр второго объекта (В) и наоборот, каждому экземпляру второго объекта (В) соответствует только один экземпляр первого объекта (А). Следует заметить, что такие объекты легко могут быть объединены в один, структура которого образуется объединением реквизитов обоих исходных объектов, а ключевым реквизитом может быть выбран любой из альтернативных ключей, т. е. ключей исходных объектов.
Графическое изображение одно-однозначной связи приведено на рис. 2.7.
Рис. 2.7. Графическое изображение одно-однозначной связи
О
дно-многозначные связи (1:М) — это такие связи, когда каждому экземпляру одного объекта (А) может соответствовать несколько экземпляров другого объекта (В), а каждому экземпляру второго объекта (В) может соответствовать только один экземпляр первого объекта (А). Графическое изображение одно-многозначной связи приведено на рис. 2.8.
Р
ис. 2.8. Графические изображение одно-многозначной связи.
В такой связи А является главным объектом, а объект В — чиненным, т. е. имеет место иерархическая подчиненность объекта В объекту А.
Много - многозначные связи (M:N) — это такие связи, когда каждому экземпляру одного объекта (А) могут соответствовать несколько экземпляров второго объекта (В) и наоборот, каждому экземпляру второго объекта (В) может соответствовать тоже несколько экземпляров первого объекта (А). Графическое изображение связи типа M:N показано на рис. 2.9.
Рис. 2.9. Графическое изображение много - многозначной связи
Много - многозначные связи не могут непосредственно реализовываться в реляционной базе данных. Поэтому, если выявлены такие связи, их может понадобиться преобразовать, путем введения дополнительного объекта "связка". Исходные объекты будут связаны с этим объектом одно-многозначным связями. Таким образом объект-связка является подчиненным в одно-многозначных связях по отношению к каждому из исходных объектов.
На рис. 2.10 показано преобразование связи типа M:N через объект, выполняющий роль "связки".
Рис. 2.10. Преобразование связи "дали М:М через объект - связка
Объект-связка должен иметь идентификатор, образованный из идентификаторов исходных объектов Ка и Кв.
При рассмотренном выше подходе к выделению информационных объектов объект-связка, как правило, выявляется в результате анализа функциональных зависимостей реквизитов. Много - многозначные связи в этом случае не требуют специальной реализации, т. к. осуществляются через объект, выполняющий роль объекта-связки.
Примеры определения связей между информационными объектами
Связи между объектами ГРУППА-»СТУДЕНТ характеризуются одно-многозначными отношениями, поскольку одна группа включает много студентов, а один студент входит только в одну группу. Связь между ними осуществляется по номеру группы, который является уникальным идентификатором объекта ГРУППА и входит в составной идентификатор объекта СТУДЕНТ.
Аналогично устанавливается связь между объектами КАФЕДРА-» ПРЕПОДАВАТЕЛЬ, которые также находятся в одно-многозначных отношениях. Связь между ними осуществляется по уникальному ключу объекта КАФЕДРА — коду кафедры.
В каждой группе в течение семестра проводятся занятия по различным предметам определенным преподавателем. Поскольку каждое такое занятие планируется для конкретной группы, устанавливается связь типа один – ко -многим между объектами ГРУППА-»ИЗУЧЕНИЕ.
По каждому предмету проводится множество занятий в различных группах разными преподавателями, что определяет отношения типа один – ко - многим между ПРЕДМЕТ->ИЗУЧЕНИЕ.
Аналогично определяются отношения типа один – ко - многим между объектами ПРЕПОДАВАТЕЛЬ-»ИЗУЧЕНИЕ.
С
ледует отметить, что объект ИЗУЧЕНИЕ фактически играет роль объекта-связки в много - многозначных отношениях объектов (рис. 2.11, 2.12).
Рис. 2.11. Много - многозначные связи информационных объектов '
Объект УСПЕВАЕМОСТЬ содержит данные об успеваемости (оценку) конкретного студента по конкретному занятию. Поэтому он является связанным с объектом СТУДЕНТ и объектом ИЗУЧЕНИЕ (рис. 2.12).
Один студент имеет данные об успеваемости по нескольким! предметам, но эти данные всегда относятся к одному конкретному студенту и занятию. Это означает, объект УСПЕВАЕМОСТЬ находится в одно-многозначных отношениях с объектом СТУДЕНТ, а также в одно-многозначных отношениях с объектом ИЗУЧЕНИЕ.
Заметим, что объект УСПЕВАЕМОСТЬ выполняет роль объекта-связки в много - многозначных отношениях объектов СТУДЕНТ и ИЗУЧЕНИЕ.
Много - многозначные отношения между этими объектами определяются тем, что одному студенту соответствует много видов занятий, отображаемых объектом ИЗУЧЕНИЕ, а один вид занятия проводится со многими студентами.
В табл. 2.6 определены главные и подчиненные информационные объекты в связях между ними.
Номер связи | Главный объект | Подчиненный объект | Тип связи |
1 | ГРУППА | СТУДЕНТ | 1:М |
2 | КАФЕДРА | ПРЕПОДАВАТЕЛЬ | 1:М |
3 | ГРУППА | ИЗУЧЕНИЕ | 1:М |
4 | ПРЕДМЕТ | ИЗУЧЕНИЕ | 1:М |
5 | ПРЕПОДАВАТЕЛЬ | ИЗУЧЕНИЕ | 1:М |
6 | СТУДЕНТ | УСПЕВАЕМОСТЬ | 1:М |
7 | ИЗУЧЕНИЕ | УСПЕВАЕМОСТЬ | 1:М |
Таблица 2.6. Связи информационных объектов
Информационно-логическая модель предметной области "Учебный процесс"
Информационно-логическая модель рассматриваемой предметной области, построенная в соответствии с выявленными информационными объектами и связями, представлена на рис. 2.12.
Информационно-логическая модель приведена в каноническом виде, т. к. объекты размещены по уровням. На нулевом уровне размещаются объекты, не подчиненные никаким другим объектам. Уровень остальных объектов определяется наиболее длинным путем к объекту от нулевого уровня. Такое размещение объектов дает представление об их иерархической подчиненности, делает модель более наглядной и облегчает понимание связей между объектами.
рис. 2.12. Информационно-логическая модель предметной области "Учебный процесс"
Логическая структура реляционной базы данных
Логическая структура реляционной базы данных Access является адекватным отображением полученной информационно логической модели, не требующим преобразований. Каждый информационный объект модели данных отображается соответствующей реляционной таблицей. Структура реляционной таблицы определяется реквизитным составом объекта, где каждый столбец (поле) соответствует одному из реквизитов. Ключевые реквизиты объекта образуют уникальный ключ реляционной таблицы. Для каждого столбца задается формат и размер данных, Строки (записи) таблицы соответствуют экземплярам объекта формируются при загрузке таблицы.
Связи между объектами модели данных реализуются одинаковыми реквизитами — ключами связи — в соответствующих лицах. При этом ключом связи всегда должен быть идентификатор главного объекта в связи.
Заметим, что наличие ключа связи в подчиненной таблице является средством описания связи при одно-многозначных отношениях.
В Access может быть создана схема данных, представляющая связи между таблицами базы данных. Определение одно - многозначных связей в этой схеме должно осуществляться в соответствии с построенной моделью данных. Внешний вид схем данных практически совпадает с графическим представление» информационно-логической модели. Для модели данных, строенной в рассмотренном примере, логическая структура баз данных в виде схемы данных Access приведена на рис. 2.13.
Н
а этой схеме прямоугольники отображают таблицы базы данных с полным списком их полей, а связи показывают, по каким полям осуществляются взаимосвязи таблиц. Имена ключевых полей для наглядности выделены и находятся в верхней час полного списка полей каждой таблицы.
Рис. 2.13. Логическая структура реляционной базы данных предметной области "Учебный процесс"
В заключение отметим, что рассмотренные выше этапы проектирования базы данных, основанные на построении модели Данных предметной области, позволяют легко получить логическую структуру реляционной базы данных Access.