MySQL obsługuje wielotablicowy UPDATE
składnia
, co w przybliżeniu wyglądałoby tak:
UPDATE Reservations r JOIN Train t ON (r.Train = t.TrainID)
SET t.Capacity = t.Capacity + r.NoSeats
WHERE r.ReservationID = ?;
Możesz zaktualizować Train
tabeli i usuń z Reservations
tabeli w tej samej transakcji. Dopóki najpierw wykonujesz aktualizację, a potem usuwasz, to powinno działać.