Бих написал съхранена процедура, наречена REGISTER FLIGHT, която ще приеме като параметри PK на таблицата MODEL (и всички други необходими параметри. Накарайте процедурата да извърши търсене в таблицата MODEL и да вмъкне първоначалните редове в таблицата на полета.
След това ще имам втора процедура, наречена BOOK_SEAT, която в процеса на резервиране на полета ще намали броя на наличните места в полета. Ако резервацията намали available_seats до нула (или по-малко), тя ще хвърли изключение (напр. OVERBOOKED_EXCEPTION) и ще очаква повикващият да улови и да се справи с проблема.