Транзакции в MySQL 🚀 - это способ гарантировать, что ваши данные остаются надежными и целостными. Давайте разберемся, как это работает на примерах.
Что такое транзакции? 🤔
Транзакция - это группа операций с данными, которые либо полностью выполняются, либо нет. Они основаны на принципах ACID:
ℹ️ Атомарность (все или ничего)
ℹ️Согласованность (данные остаются правильными)
ℹ️ Изоляция (операции не мешают друг другу)
ℹ️ Долговечность (результаты сохраняются после завершения)
Примеры использования 🛠
1. Перевод денег с одного счета на другой:
START TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
Здесь мы используем START TRANSACTION и COMMIT, чтобы гарантировать, что обе операции выполнены вместе.
2. Откат при ошибке:
START TRANSACTION;
UPDATE accounts SET balance = balance - 1000 WHERE id = 1;
-- Если ошибка, отменяем всё
ROLLBACK;
ROLLBACK отменяет все изменения, если что-то пошло не так.
Заключение
Использование транзакций в MySQL помогает сохранять ваши данные в безопасности и целостности, гарантируя, что комплексные операции либо выполняются полностью, либо не оказывают влияния вовсе.