Встречается на 1% собеседований по Python
Как работают транзакции в БД
Транзакции в БД обеспечивают атомарность, согласованность, изолированность и долговечность (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)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы