Встречается на 2% собеседований по Python
Какие знаешь принципы ACID
ACID — это набор принципов, обеспечивающих надежность транзакций в базах данных:
- Атомарность (Atomicity) — транзакция выполняется целиком или не выполняется вовсе. Если что-то пошло не так, все изменения откатываются.
- Согласованность (Consistency) — транзакция переводит БД из одного валидного состояния в другое, не нарушая ограничений (constraints, триггеры и т.д.).
- Изолированность (Isolation) — параллельные транзакции не влияют друг на друга (уровни изоляции: Read Uncommitted, Read Committed, Repeatable Read, Serializable).
- Долговечность (Durability) — после фиксации (commit) изменения сохраняются даже при сбое системы.
Пример на Python с SQLite:
python
import sqlite3
conn = sqlite3.connect(":memory:")
cursor = conn.cursor()
cursor.execute("CREATE TABLE accounts (id INTEGER PRIMARY KEY, balance INTEGER)")
cursor.execute("INSERT INTO accounts VALUES (1, 1000), (2, 500)")
try:
cursor.execute("UPDATE accounts SET balance = balance - 100 WHERE id = 1")
cursor.execute("UPDATE accounts SET balance = balance + 100 WHERE id = 2")
conn.commit() # Фиксация изменений (Durability)
except:
conn.rollback() # Откат при ошибке (Atomicity)
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы