Встречается на собеседованиях • сегодня
Какие знаешь свойства транзакции в БД
Транзакции в БД обладают четырьмя ключевыми свойствами (ACID):
- Атомарность (Atomicity) - транзакция выполняется полностью или не выполняется вообще. Если происходит ошибка, все изменения откатываются.
- Согласованность (Consistency) - транзакция переводит БД из одного согласованного состояния в другое, не нарушая целостности данных.
- Изолированность (Isolation) - параллельные транзакции не влияют друг на друга, как если бы они выполнялись последовательно.
- Долговечность (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()
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы