Встречается на собеседованиях • сегодня

Как работают транзакции в БД

Транзакции в БД обеспечивают атомарность, согласованность, изолированность и долговечность (ACID). Они группируют несколько операций в одну логическую единицу работы — либо все операции выполняются успешно (commit), либо ни одна (rollback).

Пример с SQLite:

python
import sqlite3

conn = sqlite3.connect('test.db')
cursor = conn.cursor()

try:
conn.execute("BEGIN TRANSACTION")
cursor.execute("UPDATE accounts SET balance = balance - 100 WHERE id = 1")
cursor.execute("UPDATE accounts SET balance = balance + 100 WHERE id = 2")
conn.commit() # Фиксация изменений
except Exception as e:
conn.rollback() # Откат при ошибке
finally:
conn.close()

text

**Ключевые моменты:**
- `BEGIN` — старт транзакции
- `COMMIT` — подтверждение изменений
- `ROLLBACK` — отмена изменений
- Изоляция регулирует видимость изменений между параллельными транзакциями (уровни: read uncommitted, read committed, repeatable read, serializable)
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы