SELECT ... FOR UPDATE
uzamkne záznam pomocí zámku pro zápis (výhradní), dokud nebude transakce dokončena (potvrzena nebo vrácena zpět).
Chcete-li vybrat záznam a zajistit, že se nezmění, dokud jej neaktualizujete, můžete zahájit transakci, vyberte záznam pomocí SELECT ... FOR UPDATE
, proveďte rychlé zpracování, aktualizujte záznam a poté transakci potvrďte (nebo vraťte zpět).
Pokud použijete SELECT ... FOR UPDATE
mimo transakci (autocommit ON), pak bude zámek stále okamžitě uvolněn, takže se ujistěte, že k udržení zámku použijete transakci.
Kvůli výkonu nenechávejte transakce otevřené příliš dlouho, takže aktualizace by měla být provedena okamžitě.