Back to questions
Т-Банк
Senior
7
Что такое транзакции в БД? Какие свойства и команды?
Companies where asked
Answer from AI
sobes.tech AI
Транзакция в базе данных — это последовательность операций, которая выполняется как единое целое. Она либо полностью завершается успешно (commit), либо полностью откатывается (rollback), если произошла ошибка.
Основные свойства транзакций описываются аббревиатурой ACID:
- Atomicity (Атомарность) — все операции внутри транзакции выполняются полностью или не выполняются вовсе.
- Consistency (Согласованность) — транзакция переводит базу из одного корректного состояния в другое.
- Isolation (Изолированность) — параллельные транзакции не влияют друг на друга.
- Durability (Надежность) — после фиксации транзакции изменения сохраняются даже при сбоях.
Основные команды для работы с транзакциями в SQL:
BEGIN TRANSACTIONилиSTART TRANSACTION— начать транзакцию.COMMIT— зафиксировать изменения.ROLLBACK— отменить изменения, сделанные в транзакции.
Пример:
BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
Если в процессе возникнет ошибка, можно выполнить ROLLBACK, чтобы отменить изменения.