Sobes.tech
Middle

Come funzionano le transazioni in SQL Server?

sobes.tech AI

Risposta dell'AI

In SQL Server, una transazione è una sequenza di operazioni eseguite come un'unica unità. La transazione garantisce le proprietà ACID:

  • Atomicità: tutte le operazioni all'interno della transazione vengono completate o nessuna di esse.
  • Consistenza: dopo l'esecuzione della transazione, il database rimane in uno stato corretto.
  • Isolamento: le transazioni parallele non si influenzano a vicenda.
  • Durabilità: dopo la conferma, le modifiche persistono anche in caso di guasti.

Le transazioni iniziano con BEGIN TRANSACTION e terminano con COMMIT (che conferma le modifiche) o ROLLBACK (che annulla le modifiche). SQL Server utilizza un registro delle transazioni per garantire affidabilità e recupero.

Esempio:

BEGIN TRANSACTION;
UPDATE Accounts SET Balance = Balance - 100 WHERE AccountID = 1;
UPDATE Accounts SET Balance = Balance + 100 WHERE AccountID = 2;
IF @@ERROR <> 0
    ROLLBACK TRANSACTION;
ELSE
    COMMIT TRANSACTION;