#823

Preveď peniaze medzi účtami a nedovoľ ísť do mínusu

Klasická úloha o dvoch bankových účtoch a prevode. Ak len prečítaš oba zostatky a aktualizuješ ich bez zámkov, dve paralelné transakcie môžu vidieť rovnaký stav a obe odčítajú peniaze — účet skončí v mínuse. V rámci jednej transakcie preveď 200 z účtu Anny (id 1) na účet Boba (id 2): najprv uzamkni oba riadky na zápis do konca transakcie, potom dvomi aktualizáciami odčítaj 200 Anne a pripíš 200 Bobovi.

Ukážka očakávaného výstupu

Takto vyzerá správna odpoveď — počet riadkov je jej vlastný, nemusí sa zhodovať s tabuľkami schémy.

idholderbalance
1Аня800.00
2Боб700.00

Tu sa zobrazí výsledok vášho dotazu