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

Что такое Atomicity в ACID

Atomicity гарантирует, что транзакция выполняется как единое целое — либо полностью, либо не выполняется вообще. Если хотя бы одна операция в транзакции завершится неудачно, вся транзакция откатывается, и БД возвращается в исходное состояние.

Пример с кодом (SQLite):

python
import sqlite3

conn = sqlite3.connect("example.db")
cursor = conn.cursor()

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

Если второй UPDATE завершится ошибкой, первый тоже не применится.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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