Rezervuj zboží, jen když je skutečně dostupné
Uživatel přidal položku do košíku — backend musí na skladě rezervovat tři kusy, ale jen pokud je jich skutečně dost. Pokud uděláš «přečíst zásobu → zkontrolovat → zapsat» jako samostatné příkazy, dvě paralelní transakce mohou vidět stejné číslo a obě rezervovat poslední kus.
Jediný podmíněný update to řeší atomicky: zkus zvýšit reserved o tři u produktu s id 1, ale pouze pokud je qty - reserved alespoň 3. Pokud se nakonec žádný řádek neaktualizoval — vrať uživateli «není skladem».
Jen INSERT/UPDATE/DELETE — závěrečný SELECT není potřeba.
Přihlaste se, abyste viděli historii odevzdání
Přihlásit sePřihlaste se, abyste mohli použít AI mentora
Přihlásit se