Reservera lager bara om det faktiskt finns tillgängligt
En användare lade en vara i sin varukorg — backend behöver reservera tre enheter i lagret, men bara om det faktiskt finns tillräckligt i lager. Om du gör «läs lager → kontrollera → skriv» som separata satser kan två parallella transaktioner se samma antal och båda reservera den sista enheten.
En enda villkorlig uppdatering löser detta atomärt: försök öka reserved med tre för produkten med id 1, men endast när qty - reserved är minst 3. Om ingen rad blev uppdaterad — returnera «slut i lager» till användaren.
Endast INSERT/UPDATE/DELETE — ingen avslutande SELECT behövs.
Logga in för att se historik över inskick
Logga inLogga in för att använda AI-mentorn
Logga in