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

Какие знаешь свойства транзакции в БД

Транзакции в БД обладают четырьмя ключевыми свойствами (ACID):

  1. Атомарность (Atomicity) - транзакция выполняется полностью или не выполняется вообще. Если происходит ошибка, все изменения откатываются.
  2. Согласованность (Consistency) - транзакция переводит БД из одного согласованного состояния в другое, не нарушая целостности данных.
  3. Изолированность (Isolation) - параллельные транзакции не влияют друг на друга, как если бы они выполнялись последовательно.
  4. Долговечность (Durability) - после успешного завершения (commit) изменения сохраняются даже при сбое системы.

Пример в Python с 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:
    conn.rollback()
    print("Transaction failed")
finally:
    conn.close()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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