Воздушное судно
- 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 судна
- номер места
Я бы такую структуру сделал.
Количества мест - опциональны, их можно рассчитывать по таблице с регистрацией на рейс.
Исходя из двух таблиц - данную задачу решить сложно: т.к. это получается ни разу не система для управления аэропортом + в таблице с рейсами - будет постоянное дублирование данных в том случае, если их не выносить в отдельную сущность.