
- •Курсовой проект
- •«Разработка и построение базы данных аэропорта»
- •Оглавление
- •1. Предпроектное исследование задачи 3
- •2. Постановка задачи 5
- •3. Разработка информационного обеспечения задачи 6
- •4. Разработка алгоритмов и технологии решения задачи 16
- •5. Построение приложения пользователя 26
- •6. Список использованной литературы 33
- •1. Предпроектное исследование задачи
- •1.1 Условие задачи
- •1.2 Определение предметной области
- •1.3 Ограничения предметной области
- •2. Постановка задачи
- •2.1 Описание выходных документов
- •2.2 Описание входных документов
- •3. Разработка информационного обеспечения задачи
- •3.1 Информационный анализ предметной области и выделение ио задачи
- •3.2 Выделение информационных сущностей и определение ключей в группах
- •1.Самолеты 2. Направление
- •5. Цена классов 6. Проданные билеты
- •3.3 Установление связей между сущностями
- •3.4 Построение информационно – логической модели
- •3.5 Логическое моделирование базы данных
- •3.6 Физическое моделирование базы данных
- •3.7 Исходные данные контрольного примера
- •4. Разработка алгоритмов и технологии решения задачи
- •4.1 Моделирование данных
- •4.2 Заполнение базы данных средствами sql
- •4.3 Создание запросов select
- •4.4 Использование подчинённых запросов в языке sql
- •5. Построение приложения пользователя
- •Способы создания форм
- •Панель элементов и Список полей
- •Разработка сложных форм
- •Кнопочные формы
- •Главная кнопочная форма
- •Справочная форма
- •Форма, выдающая отчеты
- •6. Список использованной литературы
1.Самолеты 2. Направление
*№ самолета *№ направления
вид самолета направление
количество мест протяженность
количество самолетов
производство
3.Рейсы 4. Цена
*№ рейса *№ цены
№ самолета № рейса
время отправления цена
направление
5. Цена классов 6. Проданные билеты
*№ цены *№ рейса
1 коэфф. 1 класс
2 коэфф. 2 класс
3 коэфф. 3 класс
3.3 Установление связей между сущностями
О
чевидно,
что в одном направлении может быть
несколько рейсов, но каждый рейс
определяется только одним направлением.
1
∞
Один самолет может совершать несколько рейсов, но на определенный рейс вылетает только один самолет.
Самолет
Рейс
1
∞
№ самолета
Начальная цена рейса формируется в зависимости от протяженности направления, то есть от номера рейса. Каждому рейсу соответствует только одна цена.
Билеты на аэропорте продаются на определенный рейс, поэтому документ о проданных билетах связан с рейсом через номер рейса.
Надбавка по цене формируется относительно начальной цены рейса, коэффициенты надбавки для трех классов различаются для разных начальных цен.
3.4 Построение информационно – логической модели
Логическая структура реляционной базы данных определяется совокупностью логически взаимосвязанных реляционных таблиц. Каждая реляционная таблица имеет структуру, определяемую реквизитным составом одного из информационных объектов полученной ИЛМ. Логические связи таблиц соответствуют структурным связям между объектами.
Логическая структура реляционной базы данных, построенная на основе полученной ИЛМ, приведена ниже. На этой схеме реляционные таблицы представлены структурой, определяемой составом и последовательностью полей (атрибутов). Ключевые поля подчеркнуты. Логические связи изображены линиями между одинаковыми ключами связи.
3.5 Логическое моделирование базы данных
3.6 Физическое моделирование базы данных
Таблица «Самолет»
Имя поля |
Ключевой реквизит |
Обязатель- ный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
№С |
Да |
Да |
счетчик |
2 |
№ самолета |
NOT NULL |
В |
Нет |
Да |
символьный |
40 |
Вид |
NOT NULL |
КМ |
Нет |
Да |
числовой |
INTEGER |
Кол-во мест |
NOT NULL |
КС |
Нет |
Да |
числовой |
INTEGER |
Кол-во самолетов |
NOT NULL |
Таблица «Направление»
Имя поля |
Ключевой реквизит |
Обязатель-ный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
№Н |
Да |
Да |
счетчик |
2 |
№ направления |
NOT NULL |
Н |
Нет |
Да |
символьный |
40 |
Направление |
NOT NULL |
П |
Нет |
Да |
числовой |
INTEGER |
Протяженность |
NOT NULL |
Таблица «Рейсы»
Имя поля |
Ключевой реквизит |
Обязатель- ный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
№Р |
Да |
Да |
счетчик |
2 |
№ рейса |
NOT NULL |
ВО |
Нет |
Да |
дата/время |
DATETIME |
Время отправления |
|
№Н |
Нет |
Да |
числовой |
INTEGER |
№ направления |
|
№С |
Нет |
Да |
числовой |
INTEGER |
№ самолета |
|
Таблица «Проданные билеты»
Имя поля |
Ключевой реквизит |
Обязатель- ный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
№Р |
Да |
Да |
счетчик |
2 |
№ рейса |
NOT NULL |
1 Кл |
Нет |
Да |
числовой |
NTEGER |
1 класс |
|
2 Кл |
Нет |
Да |
числовой |
INTEGER |
2 класс |
|
3 Кл |
Нет |
Да |
числовой |
INTEGER |
3 класс |
|
Таблица «Цена»
Имя поля |
Ключевой реквизит |
Обязатель- ный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
№Ц |
Да |
Да |
счетчик |
2 |
№ цены |
NOT NULL |
Ц |
Нет |
Да |
денежный |
MONEY |
Цена |
|
№Р |
Нет |
Да |
числовой |
INTEGER |
№ рейса |
|
Таблица «Цена классов самолета»
Имя поля |
Ключевой реквизит |
Обязательный реквизит |
Тип данных |
Размер |
Подпись |
Условие на значение |
1К |
Да |
Да |
числовой |
REAL |
1 коэфф. |
NOT NULL |
2К |
Нет |
Да |
числовой |
REAL |
2 коэфф. |
NOT NULL |
3К |
Нет |
Да |
числовой |
REAL |
3 коэфф. |
NOT NULL |
№Р |
Нет |
Да |
числовой |
INTEGER |
№ рейса |
|