Для чего нужна транзакция

Python Senior Без компании
Для чего нужна транзакция
Ответы
Транзакция в базах данных — это последовательность операций, выполняемая как единое целое. Она обеспечивает целостность данных, даже если во время выполнения произойдёт сбой. Основные свойства транзакций (ACID): - **Атомарность** — либо все операции выполняются, либо ни одна. - **Согласованность** — данные остаются в корректном состоянии. - **Изолированность** — параллельные транзакции не влияют друг на друга. - **Долговечность** — после завершения изменения сохраняются. Пример в Python с SQLite: ``` import sqlite3 conn = sqlite3.connect('example.db') cursor = conn.cursor() try: conn.execute("BEGIN TRANSACTION") cursor.execute("INSERT INTO users (name) VALUES ('Alice')") cursor.execute("UPDATE accounts SET balance = balance - 100 WHERE user_id = 1") conn.commit() # Подтверждаем изменения except Exception as e: conn.rollback() # Откатываем при ошибке print(f"Error: {e}") finally: conn.close() ```