#796

Reservér lager kun, hvis det faktisk er tilgængeligt

En bruger lagde en vare i sin kurv — backenden skal reservere tre enheder på lageret, men kun hvis der faktisk er nok på lager. Hvis du udfører «læs lager → tjek → skriv» som separate kommandoer, kan to parallelle transaktioner se det samme tal og begge reservere den sidste enhed. En enkelt betinget opdatering løser dette atomart: forsøg at øge reserved med tre for produktet med id 1, men kun når qty - reserved er mindst 3. Hvis ingen række ender med at blive opdateret — returnér «ikke på lager» til brugeren.

Kun INSERT/UPDATE/DELETE — ingen afsluttende SELECT nødvendig.

Resultatet af din forespørgsel vises her