Що таке транзакція в SQL?
Транзакція в SQL - це набір операцій, які виконуються як єдине ціле: або всі успішно, або жодна не застосовується.
Вона потрібна, щоб зберегти цілісність даних - особливо за змін у кількох таблицях.
Приклад
sql
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;Обидва перекази виконуються як одна операція. Якщо один із кроків не вдасться - усе відкотиться назад.
Основні команди
BEGIN/START TRANSACTION- початок транзакції;COMMIT- зафіксувати зміни (зберегти);ROLLBACK- скасувати зміни (відкотити).
Властивості транзакції (ACID)
- Atomicity (Атомарність) - усе або нічого;
- Consistency (Узгодженість) - дані лишаються коректними;
- Isolation (Ізоляція) - паралельні транзакції не заважають одна одній;
- Durability (Надійність) - після
COMMITдані зберігаються назавжди.
Підсумок: Транзакція - це гарантований спосіб виконати кілька SQL-операцій безпечно й послідовно, щоб база не опинилася в «наполовину оновленому» стані.
Коротка відповідь
Для співбесідиPremium
Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.