SELECT ... FOR UPDATE
ще заключи записа със заключване за запис (изключително), докато транзакцията не бъде завършена (ангажирана или връщана назад).
За да изберете запис и да се уверите, че той не е променен, докато не го актуализирате, можете да започнете транзакция, изберете записа с помощта на SELECT ... FOR UPDATE
, направете бърза обработка, актуализирайте записа, след което ангажирайте (или върнете назад) транзакцията.
Ако използвате SELECT ... FOR UPDATE
извън транзакция (включено автоматично завършване), тогава заключването пак ще бъде незабавно освободено, така че не забравяйте да използвате транзакция, за да запазите заключването.
За ефективност не дръжте транзакциите отворени много дълго, така че актуализацията трябва да се извърши незабавно.