Федеральное Агентство Железнодорожного Транспорта
УрГУПС
Кафедра «Связь»
Курсовая работа.
Проектирование базы данных.
Работу выполнил:
студент гр. Ит-314
Медведев Н.В.
Работу проверил:
преподаватель
Пащенко М.А.
Екатеринбург,
2006 г.
Содержание
Введение 3
1.1. Описание предметной области 5
1.2. Описание информационных потребностей пользователей 5
1.3. Построение инфологической модели 6
2.1. Выбор и характеристика СУБД 7
2.2. Построение даталогической модели 9
2.3. Создание базы данных 11
2.4. Заполнение БД 12
2.5. Запросы к БД 14
Заключение 17
Список использованной литературы 18
Введение.
Под базой данных понимается объективная форма представления и организации совокупности данных, систематизированная таким способом, чтобы эти данные могли быть найдены и обработаны с помощью ЭВМ.
Система управления базой данных - это совокупность языковых и программных средств, предназначенных для создания, ведения и коллективного использования БД.
Проектирование БД представляет собой сложный трудоемкий процесс отображения предметной области во внутреннюю модель данных. В процессе проектирования разрабатывается модели разных уровней архитектуры БД, проверяется возможность отображения объектов одной модели объектами другой модели.
При проектировании базы данных решаются две основных проблемы:
· Каким образом отобразить объекты предметной области в абстрактные объекты модели данных, чтобы это отображение не противоречило семантике предметной области, и было по возможности лучшим (эффективным, удобным и т.д.)? Часто эту проблему называют проблемой логического проектирования баз данных.
· Как обеспечить эффективность выполнения запросов к базе данных, т.е. каким образом, имея в виду особенности конкретной СУБД, расположить данные во внешней памяти, создание каких дополнительных структур (например, индексов) потребовать и т.д.? Эту проблему называют проблемой физического проектирования баз данных.
Рис.1 Этапы проектирования БД
1.1 Описание предметной области
Предметная область определяется с помощью четырех основных составляющих:
- Объект
- Свойство
- Связь
- Время
В данном курсовом проекте предметной областью является «спортивное общество», а точнее, те люди, которые интересуются футболом и следят за результатами игр.
Требуется разработать базу данных для букмекерской конторы, чтобы быстро определять результаты игр команд в различных чемпионатах, составы этих команд, тренеров и другую информацию о команде. Информация об играх будет браться из федерации футбола.
В базе данных будет храниться информация о результатах игр различных чемпионатах, составах команд, тренеров и т.д.
1.2. Описание информационных потребностей пользователей
Основные пользователи этой базы данных это люди, интересующиеся футболом и следящие за результатами игр. При помощи БД они могут узнать какая команда более перспективна для ставок, а какая наоборот «темная лошадка». Можно просмотреть результаты игры отдельной команды в разных чемпионатах. По БД может быть составлен рейтинг команды. Узнать информацию о команде, о сыгранных матчах в определенное время.
Основными понятиями ER-модели являются сущность, связь и атрибут:
Сущность – это реальный или представляемый объект, информация о котором должна сохраняться и быть доступна. В диаграммах ER-модели сущность представляется в виде прямоугольника, содержащего имя сущности. При этом имя сущности - это имя типа, а не некоторого конкретного экземпляра этого типа.
Каждый экземпляр сущности должен быть отличим от любого другого экземпляра той же сущности (это требование в некотором роде аналогично требованию отсутствия кортежей-дубликатов в реляционных таблицах).
Связь – это графически изображаемая ассоциация, устанавливаемая между двумя сущностями. Эта ассоциация обычно является бинарной и может существовать между двумя разными сущностями или между сущностью и ей же самой (рекурсивная связь).
Связь представляется в виде линии. При этом над местом "стыковки" связи с сущностью ставится знак «∞» или буква «M», если для этой сущности в связи могут использоваться много (many) экземпляров сущности, и цифра «1», если в связи может участвовать только один экземпляр сущности.
Как и сущность, связь – это типовое понятие, все экземпляры обеих пар связываемых сущностей подчиняются правилам связывания.
Атрибутом сущности является любая деталь, которая служит для уточнения, идентификации, классификации, числовой характеристики или выражения состояния сущности. Имена атрибутов заносятся в прямоугольник, изображающий сущность, под именем сущности и изображаются малыми буквами, возможно, с примерами.
Одно из основных требований к организации базы данных – это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи.
Связь – ассоциирование двух или более сущностей. Ниже приведена диаграмма ER-типов, на которой определены связи между сущностями.
Построение инфологической модели
Инфологическая модель для базы данных «Результаты игр футбольной команды» проектировалась, как модель «Сущность-связь».
Сущность – это класс однотипных объектов. Процесс деятельности фирмы идентифицирует такие сущности: Команда, Тренер, Члены команды, Матчи, Чемпионат.
Каждая из сущностей имеет свой набор атрибутов.
Рисунок 1. Диаграмма ER – типов.
Описание сущностей:
Команда, Тренер, Члены команды, Матчи, Чемпионат.
2. Даталогическое проектирование.
2.1. Выбор и характеристика СУБД
Система управления базой данных (СУБД) представляет собой набор программных средств, посредством которого осуществляется управление базой данных и доступ к данным.
К числу основных функций СУБД принято относить следующие:
1. Непосредственное управление данными во внешней памяти.
Эта функция заключается в обеспечении необходимых структур внешней памяти, как для хранения непосредственных данных, входящих в БД, так и для служебных целей. СУБД поддерживает собственную систему именования объектов БД.
2. Управление буферами оперативной памяти.
СУБД обычно работают с БД значительного размера. Этот размер существенно превышает доступный объем оперативной памяти. При обращении к любому элементу данных производится обмен с внешней памятью, и система работает со скоростью устройства внешней памяти. Единственным способом увеличения этой скорости является буферизация данных в оперативной памяти. Поэтому в СУБД поддерживается набор буферов оперативной памяти с дисциплинами замены буферов.
3. Управление транзакциями.
Транзакция – это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется и СУБД фиксирует (COMMIT) изменения БД, произведенные ею во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД.
4. Журнализация.
СУБД должна обеспечивать надежное хранение данных во внешней памяти, т.е. СУБД должна иметь возможность восстановить последнее согласованное состояние БД после любого аппаратного или программного сбоя.
5. Поддержка языков БД.
Для работы с БД используются специальные языки баз данных. Чаще всего выделяются 2 языка – язык определения данных (DDL) и язык манипулирования данными (DML). DDL служит, главным образом, для определения логической структуры БД, а DML, содержит набор операторов манипулирования данными. Во многих СУБД обычно поддерживается единый интегрированный язык, содержащий все необходимые средства для работы с БД. Стандартным языком реляционных СУБД является язык SQL. Язык SQL сочетает средства DDL и DML, т.е. позволяет определять схему реляционной БД и манипулировать данными.
В SQL используются следующие основные типы данных, форматы которых могут несколько различаться для разных СУБД:
INTEGER - целое число (обычно до 10 значащих цифр и знак);
SMALLINT- "короткое целое" (обычно до 5 значащих цифр и знак);
DECIMAL(p,q) - десятичное число, имеющее p цифр (0<p<16) и знак; с помощью q задается число цифр справа от десятичной точки (q<p, если q = 0, оно может быть опущено);
FLOAT - вещественное число с 15 значащими цифрами и целочисленным порядком, определяемым типом СУБД;
CHAR(n) - символьная строка фиксированной длины из n символов (0<n<256);
VARCHAR(n) - символьная строка переменной длины, не превышающей n символов (n>0 и разное в разных СУБД, но не меньше 4096);