Napisałbym procedurę składowaną o nazwie REGISTER FLIGHT, która przyjmie jako parametry PK tabeli MODEL (i wszelkie inne potrzebne parametry. Procedura ta wykona wyszukiwanie w tabeli MODEL i wstawi początkowe wiersze do tabeli lotu).
Miałbym wtedy drugą procedurę o nazwie BOOK_SEAT, która w procesie rezerwacji lotu zmniejszyłaby liczbę dostępnych miejsc w locie. Jeśli rezerwacja zmniejszy available_seats do zera (lub mniej), spowoduje zgłoszenie wyjątku (np. OVERBOOKED_EXCEPTION) i oczekuje, że dzwoniący złapie i poradzi sobie z problemem.