
- •Содержание
- •Введение
- •Анализ разрешений и запретов на операции с табличными данными для различных пользователей.
- •1 Системный анализ предметной области
- •1.2 Описание предметной области
- •1.2 Описание входных документов для заполнения бд
- •1.3 Определение пользователей
- •1.4 Определение запросов
- •1.5 Определение выходных документов
- •Анализ сущностей и связей между ними: er–диаграмма
- •Нормализация отношений: схема бд
- •Запросы
- •5 Анализ разрешений и запретов на операции с табличными данными для различных пользователей
- •6 Проектирование пользовательского интерфейса
- •6.1 Реализация всех запросов через вызовы хранимых процедур
- •6.2 Хранимые процедуры для выдачи требуемых разрешений каждому пользователю
- •6.3 Триггеры для работы пользователей с таблицами базы данных
- •7 Обработка и визуализация данных
- •7.1 Обработка и визуализация данных инструментами языка программирования Python
- •7.2 Визуализация данных программными инструментами Excel
- •Заключение
- •Список использованных источников
- •Приложение а Листинг создания таблиц
- •Приложение б Листинг добавление данных в таблицы
- •Приложение в Скриншоты заполненных таблиц в бд
МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
федеральное государственное автономное образовательное учреждение высшего образования
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»
ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ
КАФЕДРА 41
|
|
КУРСОВАЯ РАБОТА (ПРОЕКТ) ЗАЩИЩЕНА С ОЦЕНКОЙ
РУКОВОДИТЕЛЬ
Ст. преподаватель |
|
|
|
В. В. Боженко |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА К КУРСОВОЙ РАБОТЕ (ПРОЕКТУ)
|
РЕАЛИЗАЦИЯ МНОГОФУНКЦИОНАЛЬНОЙ ИС «Аэропорт» НА ОСНОВЕ ОТКРЫТЫХ СТАНДАРТОВ
|
по дисциплине: Базы данных |
РАБОТУ ВЫПОЛНИЛ
СТУДЕНТ гр. № |
Z0411 |
|
29.01.2024 |
|
М. В. Карелина |
||||
|
номер группы |
|
|
|
инициалы, фамилия |
||||
Студенческий билет № |
2020/3477 |
|
|
|
Шифр ИНДО |
|
Санкт-Петербург 2024
Содержание
Y
СОДЕРЖАНИЕ 2
ВВЕДЕНИЕ 3
1 Системный анализ предметной области 4
1.2 Описание предметной области 4
1.2 Описание входных документов для заполнения БД 6
1.3 Определение пользователей 6
1.4 Определение запросов 6
1.5 Определение выходных документов 7
2 Анализ сущностей и связей между ними: ER–диаграмма 8
3 Нормализация отношений: схема БД 11
4 Запросы 12
5 Анализ разрешений и запретов на операции с табличными данными для различных пользователей 20
6 Проектирование пользовательского интерфейса 22
6.1 Реализация всех запросов через вызовы хранимых процедур 22
6.2 Хранимые процедуры для выдачи требуемых разрешений каждому пользователю 29
6.3 Триггеры для работы пользователей с таблицами базы данных 30
7 Обработка и визуализация данных 35
7.1 Обработка и визуализация данных инструментами языка программирования Python 35
7.2 Визуализация данных программными инструментами Excel 38
ЗАКЛЮЧЕНИЕ 40
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 41
ПРИЛОЖЕНИЕ А 42
ПРИЛОЖЕНИЕ Б 47
ПРИЛОЖЕНИЕ В 51
Введение
Для эффективной работы аэропорта и обеспечения быстрой и надежной обработки информации как для пассажиров, так и для сотрудников, необходимо внедрить полноценную и комплексную информационную систему. Реализация данной системы требует прохождения этапов анализа, проектирования и окончательного составления. Это позволит приобрести практические навыки в программе MySQL, которые необходимы для решения различных задач в области баз данных и информационных систем в целом.
MySQL является реляционной системой управления базами данных (РСУБД). Обладает мощными возможностями для работы с большим массивом данных, представленным в таблицах. MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты. MySQL гибок за счёт поддержки большого количества типов данных и типов таблиц.
Также необходимо получить практические навыки в визуализации данных, так как необходимо уметь представлять информацию в грамотном, понятном и презентабельном виде. Визуализация данных будет производиться в средах Excel и Python.
Для проектирования и разработки был предложен вариант «Аэропорт».
Цель: разработка полноценной информационной системы средствами MySQL-сервер.
Задачи:
Анализ предметной области.
Анализ сущностей и связей между ними (на базе ER–диаграмм). Составление предварительной схемы данных.
Нормализация отношений в предварительной схеме данных (приведение отношений к третьей нормальной форме).
Составление требуемых запросов к базе данных (на языке SQL).
Анализ разрешений и запретов на операции с табличными данными для различных пользователей.
Проектирование пользовательского интерфейса: разработка хранимых процедур и триггеров в среде MySQL.
Обработка и визуализация данных с помощью систем аналитической обработки данных.
Обработка и визуализация данных средствами выбранного языка программирования.
1 Системный анализ предметной области
1.2 Описание предметной области
Аэропорт обслуживает рейсы разных авиакомпаний. У каждой авиакомпании есть несколько рейсов. Авиакомпании предоставляют самолеты различного типа (вместимости). Самолеты характеризуются типом, годом выпуска, количеством мест и фирмой-производителем. В один город могут быть несколько рейсов в разное время, осуществляемых различными авиакомпаниями. Самолеты обслуживаются экипажем: 27 командир корабля, второй пилот, штурман, бортинженер и стюардессы. О сотрудниках хранится следующая информация: Ф.И.О., должность, квалификация, экипаж. Рейс имеет свой номер, пункт отправления, пункт прибытия, время вылета, время в пути, тип самолета, название авиакомпании, обслуживающей данный рейс. Билет на самолет имеет свой номер и № рейса, ФИО пассажира, № места, стоимость, дата продажи, дата бронирования. Пассажир, приобретая билет на самолет, сообщает о себе паспортные данные. Клиент может забронировать билет по Интернету и выкупить его за 3 часа до вылета.
В результате проведенного анализа предметной области будет выделены следующие сущности: Авиакомпания, Самолёты, Рейс, Сотрудники, Билет, Пассажиры, Места, Экипаж. Список сущностей представлен в таблице №1.
Таблица 1. Список сущностей
№ |
Название |
Назначение |
1 |
Авиакомпания |
Информация об авиакомпаниях |
2 |
Самолет |
Информация о самолетах |
3 |
Рейс |
Данные о рейсах |
4 |
Сотрудники |
Данные о сотрудниках |
5 |
Билет |
Данные по купленным билетам |
6 |
Пассажиры |
Данные о пассажирах |
7 |
Места |
Информация о характеристиках мест |
8 |
Экипаж |
Данные об экипаже |
Для каждой таблицы (сущности) были приведены описания её атрибутов. Атрибуты – колонки таблицы, которые выражают определённое свойство. Списки атрибутов для сущностей представлены в таблицах №2 - №9.
Таблица 2. Описание атрибутов сущности Авиакомпания
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Авиакомпании |
Идентификатор авиакомпании |
Числовой |
Нет |
Название авиакомпании |
Название авиакомпании |
Текстовый |
Нет |
Количество рейса |
Количество совершенных рейсов |
Числовой |
Нет |
№ самолета |
Идентификатор самолета |
Числовой |
Нет |
Таблица 3. Описание атрибутов сущности Самолет
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Самолета |
Идентификатор самолета |
Числовой |
Нет |
Тип самолета |
Название типа самолета |
Текстовый |
Нет |
Год выпуска |
Год выпуска самолета |
Текстовый |
Нет |
Количество мест |
Количество мест |
Числовой |
Нет |
Фирма производитель |
Название фирмы-производителя |
Текстовый |
Нет |
Экипаж |
Идентификатор экипажа (не используется) |
Числовой |
Нет |
Таблица 4. Описание атрибутов сущности Рейс
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Рейса |
Идентификатор рейса |
Числовой |
Нет |
Пункт отправления |
Пункт отправления (город) |
Текстовый |
Нет |
Пункт прибытия |
Пункт прибытия (город) |
Текстовый |
Нет |
Время вылета |
Время вылета |
Время |
Нет |
Время в пути |
Время в пути |
Время |
Нет |
Тип самолета |
Название типа самолета |
Текстовый |
Нет |
№ Авиакомпании |
Идентификатор авиакомпании |
Числовой |
Нет |
№ Экипажа |
Идентификатор экипажа |
Числовой |
Нет |
Таблица 5. Описание атрибутов сущности Сотрудники
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Сотрудника |
Идентификатор сотрудника |
Числовой |
Нет |
Ф. И. О. |
ФИО сотрудника |
Текстовый |
Нет |
Должность |
Должность сотрудника |
Текстовый |
Нет |
Квалификация |
Квалификация сотрудника |
Текстовый |
Нет |
№ Экипажа |
Идентификатор экипажа |
Числовой |
Нет |
Таблица 6. Описание атрибутов сущности Билет
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Билета |
Идентификатор билета |
Числовой |
Нет |
№ Рейса |
Идентификатор рейса |
Числовой |
Нет |
№ Пассажира |
Идентификатор пассажира |
Числовой |
Нет |
№ Места |
Идентификатор места |
Числовой |
Нет |
Стоимость |
Стоимость билета |
Числовой |
Нет |
Дата приобретения |
Дата приобретения билета |
Дата |
Да |
Дата бронирования |
Дата бронирования билета |
Дата |
Да |
Таблица 7. Описание атрибутов сущности Пассажиры
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Пассажира |
Идентификатор пассажира |
Числовой |
Нет |
Ф. И. О. |
ФИО пассажира |
Текстовый |
Нет |
Паспортные данные |
Паспортные данные пассажира |
Текстовый |
Нет |
Таблица 8. Описание атрибутов сущности Места
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Места |
Идентификатор места |
Числовой |
Нет |
Класс |
Класс места |
Текстовый |
Нет |
Расположение |
Расположение места |
Текстовый |
Нет |
Таблица 9. Описание атрибутов сущности Экипаж
Название |
Назначение |
Тип данных |
Может быть NaN |
№ Экипажа |
Идентификатор экипажа |
Числовой |
Нет |
Название |
Название экипажа |
Текстовый |
Нет |