Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

диплом епта

.docx
Скачиваний:
30
Добавлен:
10.06.2015
Размер:
36.03 Кб
Скачать

Введение

В наше время при работе с базами данных чаще всего используется реляционная модель данных, — логическая модель данных, прикладная теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в реляционных базах данных. Структурный аспект — данные в базе данных представляют собой набор отношений. Аспект целостности — отношения отвечают определенным условиям целостности. РМД поддерживает декларативные ограничения целостности уровня домена (типа данных), уровня отношения и уровня базы данных. Аспект обработки — РМД поддерживает операторы манипулирования отношениями (реляционная алгебра).

Термин «реляционный» означает, что теория основана на математическом понятии отношение. В качестве неформального синонима термину «отношение» часто встречается слово таблица.

Принципы реляционной модели были сформулированы в 1969—1970 годах Э. Ф. Коддом. Идеи Кодда были впервые подробно изложены в статье «A Relational Model of Data for Large Shared Data Banks», ставшей классической.

Строгое изложение теории реляционных баз данных (реляционной модели данных) в современном понимании можно найти в книге К. Дж. Дейта. «C. J. Date. An Introduction to Database Systems» («Дейт, К. Дж. Введение в системы баз данных»).

СУБД Microsoft Access является системой управления реляционной базы данных, включающих все необходимые инструментальные средства для создания локальной базы данных, общей базы данных в локальной сети с файловым сервером или базы данных на SQL-сервере, а также для создания приложений пользователя, работающего с этими базами данных. База данных Access, создаваемая на локальном компьютере, отличается от баз данных других настольных СУБД. В её файле могут храниться не только данные, но и объекты интерфейса – формы, отчёты, а также программный код. Благодаря этому можно создать приложение, целиком хранящееся в одном–единственном MDB-файле, что существенно упрощает как создание, так и распространение приложений для работы с базами данных.

СУБД Access включает разнообразные и многочисленные относительно автономные программные средства, ориентированные на создание объектов база данных и приложений пользователя.

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

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

Среди многочисленных средств графического конструирования и диалоговых средств Access следует выделить средства для создания:

- таблиц и схем баз данных;

- запросов выборки, отбирающих и объединяющих данные нескольких таблиц в виртуальную таблицу, которая может использоваться во многих задачах приложения;

- запросов на изменение баз данных;

- экранных форм, предназначенных для ввода, просмотра и обработки данных в диалоговом режиме;

- отчётов, предназначенных для просмотра и вывода на печать данных из базы и результатов их обработки в удобном для пользователя виде;

- страниц доступа к данным, обеспечивающим работу с базами данных в среде Internet;

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

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

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

Чаще всего концептуальная модель базы данных включает в себя:

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

· описание ограничений целостности, т.е. требований к допустимым значениям данных и к связям между ними.

Логическое (даталогическое) проектирование

Логическое (даталогическое) проектирование - создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Для реляционной модели данных даталогическая модель - набор схем отношений, обычно с указанием первичных ключей, а также «связей» между отношениями, представляющих собой внешние ключи

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

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

Физическое проектирование

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

1.2 Описание модели данных

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

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

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

Инфологическое проектирование предметной области

Далее мы кратко рассмотрим некоторые черты одной из наиболее популярных семантических моделей данных - модель "Сущность-Связи" (часто ее называют кратко ER-моделью).

На использовании разновидностей ER-модели основано большинство современных подходов к проектированию баз данных (главным образом, реляционных). Модель была предложена Ченом (Chen) в 1976 г. Моделирование предметной области базируется на использовании графических диаграмм, включающих небольшое число разнородных компонентов. В связи с наглядностью представления концептуальных схем баз данных ER-модели получили широкое распространение в системах CASE, поддерживающих автоматизированное проектирование реляционных баз данных. Среди множества разновидностей ER-моделей одна из наиболее развитых применяется в системе CASE фирмы ORACLE. Ее мы и рассмотрим. Более точно, мы сосредоточимся на структурной части этой модели.

Основными понятиями ER-модели являются сущность, связь и атрибут.

Сущность - это реальный или представляемый объект, информация о котором должна сохраняться и быть доступна. В диаграммах ER-модели сущность представляется в виде прямоугольника, содержащего имя сущности. При этом имя сущности - это имя типа, а не некоторого конкретного экземпляра этого типа. Для большей выразительности и лучшего понимания имя сущности может сопровождаться примерами конкретных объектов этого типа.

Каждый экземпляр сущности должен быть отличим от любого другого экземпляра той же сущности (это требование в некотором роде аналогично требованию отсутствия кортежей-дубликатов в реляционных таблицах).

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

Связь представляется в виде линии, связывающей две сущности или ведущей от сущности к ней же самой. При это в месте "стыковки" связи с сущностью используются трехточечный вход в прямоугольник сущности, если для этой сущности в связи могут использоваться много (many) экземпляров сущности, и одноточечный вход, если в связи может участвовать только один экземпляр сущности. Обязательный конец связи изображается сплошной линией, а необязательный - прерывистой линией.

Как и сущность, связь - это типовое понятие, все экземпляры обеих пар связываемых сущностей подчиняются правилам связывания.

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

Сущности

Сущность Студенты включает в себя следующие характеристики:

  • Код студента

  • Код группы

  • Имя

  • Фамилия

  • Отчество

  • Адрес

  • Номер телефона

  • Номер зачетной книжки

  • Форма обучения

  • Специальность

Сущность Группы включает в себя следующие характеристики:

  • Код группы

  • Количество человек

Сущность Преподаватели включает в себя следующие характеристики:

  • Код преподавателя

  • Код дисциплины

  • Имя

  • Фамилия

  • Отчество

  • Адрес

  • Номер телефона

Сущность Дисциплины включает в себя следующие характеристики:

  • Код дисциплины

  • Название дисциплины

Сущность Учебный план включает в себя следующие характеристики:

  • Код дисциплины

  • Код группы

  • Курс

  • Семестр

  • Лекции

  • Лабораторные

  • Форма контроля

Сущность Успеваемость включает в себя следующие характеристики:

  • Код дисциплины

  • Код студента

  • Оценка

Сущность Курсовые работы включает в себя следующие характеристики:

  • Код студента

  • Код преподавателя

  • Название работы

  • Оценка

Сущность Практика включает в себя следующие характеристики:

  • Код студента

  • Курс

  • Семестр

  • Название организации

  • Дата начала

  • Дата окончания

  • ФИО руководителя

  • Оценка

Сущность Дипломные работы включает в себя следующие характеристики:

  • Код студента

  • Тема

  • ФИО руководителя

  • Оценка

Сущность Перевод с курса на курс включает в себя следующие характеристики:

  • Код студента

  • Курс переведения

  • Номер приказа

Связывание сущностей и построение ER-модели предметной области деканата

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

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

Ключ сущности - это неизбыточный набор атрибутов, значения которых в совокупности являются уникальными для каждого экземпляра сущности. Неизбыточность заключается в том, что удаление любого атрибута из ключа нарушается его уникальность. Сущность может иметь несколько различных ключей.

Ключом для сущности Студенты является Код студента, так как он уникален для каждого студента.

Для сущности Группы ключом является Код группы.

Для сущности Дисциплины уникальным является код дисциплины, он и будет выступать в роли ключа.

Для сущности Учебный план ключом является код дисциплины и код группы.

Для сущности Успеваемость имеем составной ключ: код дисциплины и код студента.

Сущность Дипломные работы имеет ключ Код студента.

Для сущности Курсовые работы ключом является Код студента и Код преподавателя.

Для сущности Практика ключом является Код студента.

Для сущности Перевод с курса на курс ключом является Код студента и номер приказа.

Сущности Студенты и Группы имеют связь М:1 , так как в одной группе обучается несколько студентов.

Сущность Дисциплины и Учебный план определена как 1:М, потому что одна дисциплина может изучаться в нескольких семестрах и иметь разные формы контроля (например, в 1-м семестре по определённой дисциплине может быть зачёт, а во 2-м - экзамен).

Логическая связь между сущностями Учебный план и Успеваемость определена как 1:М, потому что по каждой дисциплине может быть поставлено несколько оценок различным студентам.

Сущности Студенты и Успеваемость имеют связь 1:М, так как у каждого студента много оценок по разным дисциплинам.

Студенты и Курсовые работы связываем как 1:М, потому что студент пишет несколько курсовых робот на разных курсах.

Курсовые работы и Учебный план имеют связь 1:М, так как по одной дисциплине пишут курсовые много студентов.

Между сущностями Студенты и Дипломные работы ставим связь 1:1, так как диплом студент пишет только один.

Студент и Практика связываем как 1:М, потому что студент проходит практику на нескольких курсах и на нескольких базах практики.

Студент и Перевод с курса на курс имеют связь 1:М, так как студент в течение обучения последовательно переводится с курса на курс.

Построенную на языке «сущность-связь» модель предметной области легко отразить в реляционной базе данных. Так каждая сущность будет определена как отдельная таблица, а каждый атрибут сущности - как отдельное свойство (поле), имеющее свои значения.

Выбор СУБД

Для проектирования базы данных была выбрана СУБД Microsoft Access по той причине, что она хорошо подходит для создания учебной базы данных, имея полный набор всех инструментов для проектирования и разработки реальной БД. Программный продукт рассчитан как на начинающего, так и на квалифицированного пользователя и предоставляет оптимальные возможности проектирование и создания базы данных. СУБД Access включает разнообразные и многочисленные относительно автономные программные средства, ориентированные на создание объектов база данных и приложений пользователя. Для создания и получения распечаток используются конструкторы отчетов, простые в использовании.

Главное качество Access, которое привлекает к нему многих пользователей - тесная интеграция с Microsoft Office. Которая выражается, например, в том, что скопировав в буфер графический образ таблицы, открыв Microsoft Word и применив вставку из буфера, мы тут же получим в документе готовую таблицу с данными из базы без каких-либо ошибок, возможных при применении другой СУБД.

Пользователям, малознакомым с понятием реляционных баз данных, Access дает возможность разделять свои сложные по структуре таблицы на несколько связанных по ключевым полям.

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

При создании многих объектов и элементов управления в Access предоставляется несколько возможностей реализации поставленной задачи. Средства графического конструирования позволяют пользователю создавать объекты базы данных и объекты приложения с помощью многочисленных графических элементов, не прибегая к программированию. Средства программирования СУБД включают язык структурированных запросов SQL, язык макрокоманд и язык объектно-ориентированного программирования для приложений Microsoft Visual Basic for Applications (VBA). VBA является частью семейства Microsoft Visual Basic, которое входит в состав Visual Studio.

Представление модели предметной области в СУБД Microsoft Access

Microsoft Access --это система управления базами данных (СУБД) реляционного типа (от англ. relation -- отношение, связь).

Основным достоинством Access является то, что она имеет простой графический интерфейс и все данные хранятся в одном файле, хотя и распределены по разным таблицам [2, 3].

Исходя из построенной ER-диаграммы определяем каждую сущность как отдельную таблицу.

Следовательно, имеем 9 таблиц:

1. Студенты

2. Группы

3. Дисциплины

4. Учебный план

5. Успеваемость студентов

6. Курсовые работы

7. Дипломные работы

8. Практика

9. Перевод с курса на курс

Таблицы строятся по правилу: сначала главные потом подчинённые (чтобы не было проблем со связыванием полей).

Главными таблицами, то есть сущностями или объектами БД являются Студент и Дисциплины. Таблица Учебный план - подчинённая относительно таблицы дисциплины, а Успеваемость студентов - относительно Учебного плана. Таблица Курсовые работы - подчинённая относительно 2-х таблиц: Студент и Учебный план. Таблицы Дипломные работы, Практика, Группы, Перевод с курса на курс являются подчинёнными относительно таблицы Студент.

Атрибуты сущностей стали соответственно названиями полей таблиц. Таблицы в режиме конструктора приведены в приложении А.

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

Тип данных определяет, какую информацию можно ввести в поле. В раскрывающемся списке ячейки предусмотрены следующие типы данных:

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

2. Поле Memo - предназначено для ввода букв, цифр и знаков препинания (длинные тексты и комментарии - не более 65535 символов). Поле этого типа не может быть ключевым.

3. Числовой - содержит только цифровую информацию (за исключением денежных величин), которую в дальнейшем можно использовать для вычислений.

4. Денежный - предназначен для ввода денежных величин. Стандартный шаблон для полей этого типа предусматривает использование двух десятичных знаков, т.е. учет копеек. Максимальное число отображаемых десятичных знаков не превышает четырех. Он используется для предотвращения ошибок при округлении.

5. Дата/время - содержит информацию о дате и времени. Дата и время хранятся в виде числа, целая часть которого представляет дату, дробная - время. Дата и время могут выводиться в различных форматах.

6. Счетчик - имеет формат длинного целого. При добавлении новой записи значение этому полю присваиваются автоматически. Это поле можно использовать в качестве ключевого.

7. Логический - применяется для полей содержащих значения Да или Нет. Например, в таком поле можно указать имеет ли данный сотрудник детей или нет. В логические поля можно записать число 0, которое интерпретируется как Ложь или 1 - подразумевается Истина. Логическое поле не может быть ключевым, но по нему можно индексировать таблицу.

8. Поле объекта OLE -- содержит объекты из других программ (растровые и векторные рисунки, аудио и видео файлы, электронные таблицы и т.д.). Это поле не может быть ключевым или индексным.

9. Гиперссылка - предназначено для хранения адреса веб-страницы, расположенной в Интернете, локальной сети или на автономном компьютере. После щелчка мышью на этом поле автоматически запускается обозреватель. Гипрессылки позволяют выполнять переходы между объектами Microsoft Access без помощи программирования. Для создания ссылки, открывающей объект Access, введите имя объекта в поле гиперссылки.

10. Мастер подстановок -- загружает мастера подстановок и выводит комбинированное окно, позволяющее выбрать из списка требуемое значение, например, можно выбрать поле из другой базы данных.

Выбрав необходимые типы данных, и описав поля можно перейти к составлению схемы данных.

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

  • таблицы,

  • последовательности,

  • хранимые программы,

  • кластеры,

  • связи баз данных,

  • триггеры,

  • библиотеки внешних процедур,

  • индексы,

  • пакеты,

  • хранимые функции и процедуры,

  • синонимы,

  • представления,

  • снимки,

  • объектные таблицы,

  • объектные типы,

  • объектные представления.

Существуют и подобъекты схемы, такие как:

  • столбцы: таблиц и представлений,

  • секции таблиц,

  • ограничения целостности,

  • триггеры,

  • пакетные процедуры и функции и другие элементы, хранимые в пакетах (курсоры, типы и т. п).