Salta ai contenuti
Manuale LogoManuale Logo

Transazioni

Una transazione è un gruppo di operazioni che il database tratta come un solo blocco logico. Questo è fondamentale quando uno stato “a metà” sarebbe pericoloso o incoerente.

Un trasferimento di denaro, per esempio, deve sottrarre e accreditare l’importo nella stessa transazione.

BEGIN;
UPDATE conti
SET saldo = saldo - 100
WHERE id = 1;
UPDATE conti
SET saldo = saldo + 100
WHERE id = 2;
COMMIT;

Qui il lavoro inizia con BEGIN e si conclude con COMMIT.

  • BEGIN: inizia la transazione
  • COMMIT: conferma tutto in modo definitivo
  • ROLLBACK: annulla le modifiche della transazione

Se qualcosa va storto a metà, puoi fare marcia indietro:

ROLLBACK;

Le transazioni evitano stati parziali o incompleti quando un’operazione fallisce.