Middle
Cum funcționează tranzacțiile în SQL Server?
sobes.tech AI
Răspuns de la AI
În SQL Server, o tranzacție este o secvență de operațiuni care se execută ca o unitate. Tranzacția garantează proprietățile ACID:
- Atomicitate: toate operațiunile din interiorul tranzacției fie se execută complet, fie deloc.
- Consistență: după executarea tranzacției, baza de date rămâne într-o stare corectă.
- Izolare: tranzacțiile paralele nu se influențează reciproc.
- Durabilitate: după confirmare, modificările rămân chiar și în caz de defecțiuni.
Tranzacțiile încep cu BEGIN TRANSACTION și se termină cu COMMIT (confirmarea modificărilor) sau ROLLBACK (anularea modificărilor). SQL Server folosește un jurnal de tranzacții pentru a asigura fiabilitatea și recuperarea.
Exemplu:
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;