Middle
Jak działają transakcje w SQL Server?
sobes.tech AI
Odpowiedź od AI
W SQL Server transakcja to sekwencja operacji wykonywanych jako jedna całość. Transakcja gwarantuje właściwości ACID:
- Atomowość: wszystkie operacje w transakcji są albo w pełni wykonywane, albo wcale.
- Spójność: po wykonaniu transakcji baza danych pozostaje w poprawnym stanie.
- Izolacja: równoległe transakcje nie wpływają na siebie nawzajem.
- Trwałość: po zatwierdzeniu transakcji zmiany są zachowywane nawet w przypadku awarii.
Transakcje rozpoczynają się od BEGIN TRANSACTION i kończą COMMIT (zatwierdzeniem zmian) lub ROLLBACK (cofa zmiany). SQL Server używa dziennika transakcji do zapewnienia niezawodności i odzyskiwania.
Przykład:
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;