Автор работы: Пользователь скрыл имя, 21 Сентября 2014 в 10:39, курсовая работа
Целью выполнения курсовой работы является закрепление теоретических знаний по курсу «Организация баз данных», освоение методики проектирования концептуальной информационной модели предметной области, преобразование концептуальной модели в физическую структуру базы данных (БД).
В ходе выполнения курсовой работы необходимо решить следующие задачи:
формализовать исходное описание предметной области;
построить концептуальную информационную модель, используя методику, изученную в рамках теоретического курса;
сгенерировать физическую структуру базы данных;
реализовать простое пользовательское приложение, демонстрирующее накопленные студентом знания по курсу Организация БД.
Введение 3
Описание предметной области 4
Описание и обоснование выбранного средства реализации 6
Концептуальная модель предметной области 11
Физическая модель базы данных 16
Описание пользовательского приложения 18
Заключение 20
Список литературы 21
Приложение 22
С помощью концептуальной зависимости или типа связи определяется понятие ключа отношения или разновидности ключей. Вероятным ключом отношения Первичным ключом отношения (ключом) называется такой вероятный ключ, значение которого является уникальным для каждой записи отношения. Первичный ключ служит идентификатором данных, хранящихся в объекте (отношении). называется такое множество атрибутов К, что каждое сочетание их значений встречается только в одной строке и никакое подмножество К этим свойством не обладает. Систематическая проверка свойств вероятного ключа отношений позволяет следить за достоверностью информации. Для облегчения контроля в каждом отношении выбирается один ключ в качестве основного.
Концептуальная модель преобразуется в логическую модель, которая обеспечивается конкретной СУБД.
Определение модели данных предусматривает указание множества допустимых информационных конструкций, операций над данными и множества ограничений для хранимых значений данных.
Принципиальными различиями обладают три модели данных:
- реляционная,
- иерархическая,
- сетевая.
В любой модели данных для представления объектов и их взаимосвязей необходимо некоторым образом сгруппировать элементы данных. Процесс нормализации состоит в группировке элементов данных в ряде отношений. Приведение отношений к первой, второй и третьей нормальной форме последовательно устраняет проблемы включения, удаления и модификации записей соответствующей базы данных.
Существующие СУБД обеспечивают реализацию возможностей этих моделей данных с теми или иными ограничениями и уточнениями. Организация данных в ЭИС рассматривается с позиций той или иной модели данных.
Логическая модель может быть либо реляционной, либо иерархической, либо сетевой. Выбор СУБД происходит после разработки концептуальной модели предметной области. Основное различие между указанными тремя типами моделей данных состоит в способах представления взаимосвязей между объектами.
Реляционная модель.
В реляционных моделях данных объекты и взаимосвязи между ними представляются с помощью таблиц. Каждая таблица представляет один объект и состоит из строк и столбцов.
Таблица в терминологии реляционной модели называется отношением.
Атрибут (поле) - каждый (любой) столбец в таблице.
Домен - множество значений, которые может принимать атрибут.
Кортежи (записи) - строки таблицы.
В соответствии с традиционной терминологией можно сказать, что столбцы таблицы представляют элементы данных, а строки - записи.
Ключ - это столбец или ряд столбцов, значение которых однозначно идентифицируют строки таблицы.
Реляционная модель основана на хорошо проработанной теории отношений (нормализации отношений). Свойства отношений в реляционной модели:
- Отсутствуют одинаковые строки,
- Порядок строк не существенен,
- Порядок столбцов не
- Все значения имеют атомарный характер, то есть их нельзя разбить на компоненты без потери информации.
Достоинства реляционной модели данных:
- простота - пользователь работает с простой моделью данных;
- независимость данных - интерфейс
пользователя не связан с
- реляционная модель основана
на хорошо проработанной
Недостатки модели:
- достаточно низкая
Разрабатываемая система предназначена для автоматизации работы библиотеки.
При разработке системы были выделены следующие сущности: Книга, Экземпляр, Читатель, Город, Улица, Автор, Жанр, Издательство, Абонемент.
Далее приведем описание атрибутов сущностей
На рисунке 1 представлена концептуальная модель данных, показывающая связи между выделенными сущностями.
Рис. 1. Концептуальная модель данных.
ER Win позволяет автоматически получить физическую модель данных, на основе спроектированной концептуальной модели. Физические модели баз данных определяют способы размещения данных в среде хранения и способы доступа к этим данным, которые поддерживаются на физическом уровне.
Различают два уровня физической модели:
Трансформационная модель содержит информацию для реализации отдельного проекта, который может быть частью общей ИС и описывать подмножество предметной области. Данная модель позволяет проектировщикам и администраторам БД лучше представить, какие объекты БД хранятся в словаре данных, и проверить, насколько физическая модель удовлетворяет требованиям к ИС.
Модель СУБД автоматически генерируется из трансформационной модели и является точным отображением системного каталога СУБД.
Физический уровень представления модели зависит от выбранного сервера. ERwin поддерживает более 20 реляционных и нереляционных БД.
По умолчанию ERwin генерирует имена таблиц и индексов по шаблону на основе имен соответствующих сущностей и ключей логической модели, которые в дальнейшем могут быть откорректированы вручную. Имена таблиц и колонок будут сгенерированы по умолчанию на основе имен сущностей и атрибутов логической модели.
Физическая модель представлена на рис. 2.
Рис. 2. Физическая модель данных
На основе разработанной реляционной модели данных создадим базу данных и пользовательское приложение в пакете Microsoft Access. Схема данных представлена на рис. 3.
Рис. 3. Схема данных.
Приложение выполняет следующие функции:
Для начала работы с базой данных необходимо открыть файл Библиотка.mdb. После открытия на экране появится стартовая форма, с помощью которой осуществляется доступ к формам и отчетам.
Формы являются типом объектов базы данных, обычно используемым для отображения данных в базе данных. Форму можно также использовать как кнопочную форму, открывающую другие формы или отчеты базы данных, а также как пользовательское диалоговое окно для ввода данных и выполнения действий, определяемых введенными данными.
Отчет позволяет представлять данные в печатном формате. Пользователь может отобразить сведения различным образом, управляя размером и внешним видом элементов отчета. Большинство отчетов, так же как и формы, являются присоединенными к одной или нескольким таблицам и запросам из БД.
Разработанные формы, запросы и отчеты представлены в приложении.
В ходе выполнения работы были решены все поставленные задачи. С помощью выбранного средства проектирования ER Win была разработана концептуальная модель данных для предметной области «Библиотека». На основе разработанной модели реализована система ведения базы данных «Библиотека».
Разработанная база данных позволяет быстро и эффективно организовать учет выдачи книг читателям библиотеки. Программа имеет удобный интерфейс, который позволяет легко ориентироваться в программе, не требуя от сотрудников каких-либо специальных навыков работы с электронно-вычислительными машинами.
База данных и приложение реализованы с использованием СУБД Microsoft Access.
Access. Учебник. 2-е издание, Инфра-М, 2007г.
Рисунок 1
Рисунок 2
Рисунок 3
Рисунок 4
Рисунок 5
Рисунок 6
Рисунок 7
Рисунок 8
Рисунок 9
Рисунок 10
Рисунок 11
Рисунок 12
Рисунок 13
Рисунок 14
Запрос «Автор». Содержит информацию об авторах и их книгах, имеющихся в фонде библиотеки.
SELECT Автор.Автор, Автор.Соавторы, Книга.Название, Книга.Издательство, Книга.Страниц
FROM Книга INNER JOIN (Автор INNER JOIN [Книги автора] ON Автор.[Код автора] = [Книги автора].Автор) ON Книга.[Код книги] = [Книги автора].Книга;
Запрос «Книга». Содержит информацию об экземплярах книг, хранящихся в библиотеке с указанием названия, автора, издательства.
SELECT Книга.Название, Автор.Автор, Автор.Соавторы, Экземпляр.[Инв номер], Экземпляр.Состояние, Экземпляр.Цена, Экземпляр.[Дата поступления]
FROM (Книга INNER JOIN Экземпляр ON Книга.[Код книги] = Экземпляр.[Код книги]) INNER JOIN (Автор INNER JOIN [Книги автора] ON Автор.[Код автора] = [Книги автора].Автор) ON Книга.[Код книги] = [Книги автора].Книга;
Запрос «Читатель». Содержит информацию о читателях библиотеки и о книгах, которые они брали.
SELECT Читатель.ФИО, Книга.Название, Автор.Автор, Автор.Соавторы, Абонемент.[Дата выдачи], Абонемент.[Дата возврата п], Абонемент.Продление, Абонемент.[Дата возврата р]
FROM (Книга INNER JOIN (Экземпляр INNER JOIN (Читатель INNER JOIN Абонемент ON Читатель.[Код читателя] = Абонемент.[Код читателя]) ON Экземпляр.[Код экз] = Абонемент.[Код экземпляра]) ON Книга.[Код книги] = Экземпляр.[Код книги]) INNER JOIN (Автор INNER JOIN [Книги автора] ON Автор.[Код автора] = [Книги автора].Автор) ON Книга.[Код книги] = [Книги автора].Книга;