des1roer: делать все внутри транзакции
Опционально лочить доступ к бд
Отличного решения я вот не вижу
Можно конечно написать процедуру и в тригере ее дергать
И процедуру можно просто запустить и проверить
Но там тоже нужно будет думать, как обработать обращения, которые прийдут во время работи процедуры