@dargezrogue

Как создать учет и отображение свободных мест?

Пишу курсовой проект на тему: "Автоматизация создания билета в кассе аэропорта". Суть вопроса: как создать учет и отображение свободных/ занятых мест на рейс при наличии таблиц:
Воздушное судно с полями - id,_вс бортовой номер, количество мест;
Рейс - id_рейс, id_вс, название,кол-во мест, кол-во свободных мест, кол-во занятых мест;
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
jemunjho
@jemunjho
Воздушное судно
- id судна (pk, a_i)
- бортовой номер (unique)
- количество мест
- тип судна (id из следующей таблицы)

Типы воздушных суден
- id типа
- название (самолет, вертолет, да что угодно)

Рейс
- id рейса (pk, a_i)
- название рейса
- дата рейса
- количество свободных мест (опционально)
- количество занятых мест (опционально)

Связующая таблица самолет-рейс
- id самолета (id, 1-я таблица)
- id рейса (id, 2-я таблица)

Пассажиры
- id пассажира (pk, a_i)
- фамилия
- имя

Регистрация на рейс
- id рейса
- id пассажира
- дата регистрации

Занятые места
- id рейса
- id пассажира
- номер места из таблицы ниже

Места в воздушном судне
- id места
- id судна
- номер места

Я бы такую структуру сделал.
Количества мест - опциональны, их можно рассчитывать по таблице с регистрацией на рейс.

Исходя из двух таблиц - данную задачу решить сложно: т.к. это получается ни разу не система для управления аэропортом + в таблице с рейсами - будет постоянное дублирование данных в том случае, если их не выносить в отдельную сущность.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@Narts
Если в распоряжении только эти данные:
Рейс - id_рейс, id_вс, название,кол-во мест, кол-во свободных мест, кол-во занятых мест;
Вопрос задан 45 минут назад 19 просмотров

, то никак.
Нужна еще одна таблица, где: id_рейс, порядковый_номер_места (можно еще столбец "ряд", если в каждом ряду одинаковая нумерация мест)
Ответ написан
@Akaero
Предлагаю к пассажиру еще добавить поле "Номер документа" (паспорта) и сделать его естественным ключом, потому что подходят два Ивановых Богуслава, а билеты они дома забыли, как будете им распечатывать билеты без номера брони?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы