PostgreSQL
дистанционно
договорная
Доработать существующую базу данных. Триггер для запуска обновления общей суммы в таблице bookings.bookings при вставке нового билета. Триггер для обновления статуса рейса на основе фактического времени вылета и прибытия. Триггер для авиационных рейсов: Проверка наличия свободных мест в самолете перед добавлением бронирования. Триггер для регистрации посадочных билетов: Автоматическое присвоение номера посадочного билета при добавлении нового билета на рейс. Триггер для бронирования: Проверка наличия достаточного количества мест в самолете перед подтверждением бронирования. Триггер проверки целостности бронирования: Убеждается, что каждое бронирование содержит как минимум один билет и один перелет, а также что перелеты в бронировании совпадают. Триггер уникальности номера билета: Запрещает создание билетов с одинаковыми номерами внутри одного бронирования. Триггер уникальности комбинации рейса и места: Гарантирует, что на один рейс и место не может быть выдано два посадочных талона. Триггер проверки ассоциации посадочного талона и билета: Запрещает выдачу посадочных талонов для рейсов, которые не включены в билет пассажира. Триггер ограничения количества перелетов в билете: Запрещает создание билетов с более чем заданным количеством перелетов. Триггер проверки дат рейсов: Запрещает создание билетов с перелетами, даты которых не следуют друг за другом в правильном порядке (например, нельзя создать билет с перелетом из Москвы в Лондон 1 января и обратно в Москву 31 декабря).
2024-11-03
Откликнуться