Skip to content

aellieme/Database-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Отчёт

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

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

Мы создали базу данных из 5 таблиц, поподробнее про каждую из них:
 1 Аэропорт — здесь хранится информация о каждом аэропорте, его названии и местоположении (город).
 2 Самолет — информация о воздушных судах: модель, вместимость, информация о том, какой авиакомпании этот самолет принадлежит.
 3 Авиакомпания — данные о компаниях, которые осуществляют авиаперевозки - название, код IATA 
 4 Рейс — здесь хранится информация о рейсах. Здесь есть такие поля, например, как номер рейса, время, направление, самолёт. Также в этой таблице мы прописываем базовую цену билета
 5 Билет — тут находятся данные непосредственно о билетах, такие как уникальный номер, фио пассажира , номер паспорта, место в самолёте и питание, цена

Требования

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

Валидность данных:
• У нас реализованы проверки на (не)корректность введённых данных - например, проверка на непустые строки, положительные числа , числовой формат для номера паспорта 
•Уникальность номер паспорта
Каждый пассажир регестрируется на рейс со своим уникальным 10 значным номером паспорта.
•Функционал для управления данными
Мы реализовали создание, изменение и удаление информации о рейсах. Аналогичный функционал реализован для всех таблиц
•В нашем приложении реализован поиск по названию аэропорта. Найденные данные мы можем также удалять и редактировать


Бд находится в третьей нормальной форме тк: (чтобы быть в 3нф, гужно чтобы каждый неключевой атрибут зависел только от первичного ключа, но не был транзитивно зависим от других неключ. атрибутов. Т.е ни одно полн не должно описывать информацию, которая уже содержится в другом поле через посредника)
Рассмотрим каждую таблицу отдельно. 
Аэропорт: первичный ключ - id аэропорта, неключевые атрибуты - его название и город. Так вот, атрибуты зависят напрямую от первичного ключа и не являются транзитивными (тк название и город не зависят друг от друга)
Авиакомпания: первичный ключ -id авиакомпании. Неключевые -название и код iata. Они оба зависят непосредственно от первичного ключа, и они также не явл. транзитивными
Самолет: неключевые - id авиакомпании, модель, вместимость. Каждый зависит от первичного ключа, модель и вместимость не зависят от авиакомпании (а только от конкретного самолета)
Рейс: первичный ключ - id рейса. Неключевые : id самолета, id аэропорта вылета и прилета, время вылета и продолжительность, базовая стоимость. Эти атрибуты также относятся к конкретному рейсу и зависят только от него.
Билет: первичный ключ - ticket id. Неключевые - id рейса, ФИО пассажира, номер паспорта, номер кресла, еда и цена. Каждый атрибут не имеет транзитивных зависимостей. Да, цена билета повышается при доп услуге - наличии питания, но это не нарушение 3 нф

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors