Разработка информационно-логической модели и создание многотабличной базы данных

Общие сведения.База данных состоит из элементов данных и связей между ними. В базе данных много различных типов элементов данных, и поэтому необходима специальная схема, позволяющая изобразить связи между типами элементов данных. Такую схему называют моделью данных.

Схема представляет собой таблицу типов используемых данных, она содержит имена объектов и их атрибуты и определяет существующую между ними связь.

Access является реляционной СУБД. Как известно, основными понятиями реляционной БД являются: отношение (таблица, файл БД), кортеж (строка таблицы, запись файла БД), домен (столбец таблицы, поле файла БД).

Все обрабатываемые данные в Бд организованы в таблицы, обладающие свойствами реляционных таблиц, и результатом любого манипулирования является таблица или совокупность таблиц. Реляционная структура базируется на аппарате реляционной алгебры.

Постановка задачи.Рассмотрим задачу, связанную с назначением на стипендию студентов по результатам экзаменационной сессии. С целью упрощения решения задачи рассмотрим данные по некоторым студентам двух учебных групп, сдающих в сессию четыре экзамена. Стипендия назначается студентам, получившим на экзаменах хорошие и отличные оценки. Если хороших оценок получено более одной, назначается стипендия в размере 100%. За одну хорошую и за все остальные отличные оценки устанавливается стипендия в размере 150%, а за отличные – 200%.

Данные организованы в три таблицы: СТУДЕНТ, СЕССИЯ, СТИПЕНДИЯ.

Таблица СТУДЕНТ содержит необходимые данные о каждом студенте, обучающемся в вузе: номер личного дела, фамилия, имя, отчество, пол, дата рождения, номер учебной группы.

Таблица СУССИЯ содержит сведения о результатах сдачи студентами четырёх экзаменов: номер личного дела (совпадает с номером зачётной книжки и студентческого билета), оценка1, оценка2, оценка3, оценка4, результат сдачи сессии может принимать одно из следующих значений: «отл» - за все отличные оценки, «хр» - за одну четвёрку и все остальные пятёрки, «хор» - за две четвёрки и более, «нхр» - за удовлетворительные и неудовлетворительные оценки.

Таблица СТИПЕНДИЯ содержит информацию об условиях назначения студентов на стипендию: результат сдачи сессии (см. табл. СЕССИЯ) и процент стипендии.

В результате обработки информации, содержащейся в этих таблицах, подготавливается проект приказа о назначении студентов на стипендию.

Информационно-логическую модель (ИЛМ) представим в графическом виде (рис.9.11)

 

 

СЕССИЯ

Рис. 9.11. Пример графического представления ИЛМ

 

При проектировании БД целесообразно строить информационно-логическую модель (ИЛМ) предметной области, которая определяет совокупность информационных объектов их атрибутов, их структурных связей.

Информационный объект – формализованное отображение объекта реального мира. В качестве объектов могут выступать реально существующие объекты, процессы, понятия.

Информационный объект должен обладать следующими свойствами: иметь имя, уникальный идентификатор, состав атрибутов, количество атрибутов, количество экземпляров. В качестве идентификатора используется один или несколько атрибутов.

Для решения поставленной задачи выделяются следующие информационные объекты и их ключи (ключ – это подчеркнутый атрибут):

СТУДЕНТ (Номер , Фамилия, Имя, Отчество, Пол, Дата рождения, Группа)

СУССИЯ (Номер, Оценка1, Оценка2, Оценка3, Оценка4, Результат)

СТИПЕНДИЯ (Результат, Процент)

Связи между информационными объектами отображаются реальными отношениями.

Определены следующие типы реальных отношений:

1) 1:1 (Один-к-одному), при которых одному экземпляру первого информационного объекта соответствует один экземпляр второго информационного объекта. Примером такого отношения может служить связь между информационными объектами поставленной здесь задачи

СТУДЕНТ<–––> СЕССИЯ

2) 1:M (Один-ко-многим), при которых одному экземпляру первого объекта соответствует множество экземпляров второго объекта, а каждому экземпляру второго объекта соответствует один экземпляр первого объекта. Примером данного отношения служит связь между информационными объектами поставленной здесь задачи

СТИПЕНДИЯ <–––> СЕССИЯ

3) М:М (Многие-ко-многим), при которых каждому экземпляру первого объекта соответствует множество экземпляров второго объекта, и каждому экземпляру второго объекта соответствует множество экземпляров первого объекта, например связь между информационными объектами

СТУДЕНТ и ПРЕПОДАВАТЕЛЬ.

Реляционный подход к проектированию ИЛМ базируется на понятии нормализации. Теория нормализации основана на том, что определённые наборы таблиц (отношений) в наилучшей степени отражают свойства предметной области и в то же время обнаруживают лучшие качества по отношению к другим наборам таблиц в процессе манипулирования. Спроектированные в данной задаче таблицы содержат только простые, далее неделимые данные (находятся в первой нормальной форме), выполняется условие функционально-полной зависимости неключевых атрибутов от ключа (находятся во второй нормальной форме), отсутствует транзитивная зависимость неключевых атрибутов от ключевых или зависимости между неключевыми атрибутами (находятся в третьей нормальной форме).

Связи между атрибутами реализуются объединением атрибутов в таблицу.

Связи между объектами в реляционной базе не хранятся, а образуются в процессе манипулирования.

Создание многотабличной базы данных.СУБД Aceess может обрабатывать данные различных таблиц базы данных. Для этого пользователю необходимо формирование каждой из этих таблиц БД установить ключ (определить ключевое поле), а затем создать связи между таблицами.

В случае если БД содержит несколько табли, необходимо также определение ключа для каждой таблицы.

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