Riserva la merce solo se è effettivamente disponibile
Un utente ha aggiunto un articolo al carrello — il backend deve riservare tre unità in magazzino, ma solo se ci sono effettivamente scorte sufficienti. Se esegui «leggi le scorte → verifica → scrivi» come istruzioni separate, due transazioni parallele possono vedere lo stesso numero ed entrambe riservare l'ultima unità.
Un singolo aggiornamento condizionato risolve il problema in modo atomico: prova ad aumentare reserved di tre per il prodotto con id 1, ma solo quando qty - reserved è almeno 3. Se nessuna riga risulta aggiornata — restituisci «non disponibile» all'utente.
Solo INSERT/UPDATE/DELETE — non serve un SELECT finale.
Accedi per vedere la cronologia degli invii
AccediAccedi per usare l'AI Mentor
Accedi