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

Приходилось ли работать с ACID-свойствами транзакций в базах данных

Да, работал с ACID-свойствами транзакций. ACID — это набор требований к транзакциям:

  • Атомарность (Atomicity) — транзакция либо выполняется целиком, либо не выполняется вообще.
  • Согласованность (Consistency) — данные остаются в валидном состоянии до и после транзакции.
  • Изолированность (Isolation) — параллельные транзакции не влияют друг на друга.
  • Долговечность (Durability) — после фиксации изменения сохраняются даже при сбое.

Пример с psycopg2 для PostgreSQL:

python
import psycopg2

conn = psycopg2.connect("dbname=test user=postgres")
cursor = conn.cursor()

try:
    cursor.execute("INSERT INTO users (name) VALUES ('Alice')")
    cursor.execute("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1")
    conn.commit()  # Фиксация транзакции (Durability)
except Exception as e:
    conn.rollback()  # Откат при ошибке (Atomicity)
finally:
    conn.close()

В Django ORM ACID обеспечивается через transaction.atomic().

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

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

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

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