Junior — Middle
Можете ли објаснити шта подразумева транзакција у контексту SQL и како она функционише?
sobes.tech АИ
Одговор од АИ
У контексту SQL, трансакција је низ операција над базом података која се извршава као јединица. Трансакција гарантује да ће све операције у њој бити успешно извршене или ниједна од њих неће утицати на базу података (атомичност).
Главне особине трансакција (ACID):
- Атомичност: све операције унутар трансакције се потпуно извршавају или уопште не.
- Конзистентност: након извршења трансакције, база података остаје у исправном стању.
- Изолација: паралелне трансакције не утичу једна на другу.
- Трајност: након потврде трансакције, промене остају чак и у случају кварова.
Пример коришћења трансакције у SQL:
BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
Ако дође до грешке, може се извршити ROLLBACK; — тада ће промене бити отказане.