Back to questions
Junior — Middle
92
Опишите ваш опыт использования транзакционных механизмов в проектах.
Companies where asked
Tilda
Answer from AI
sobes.tech AI
В проектах на PHP я использовал транзакции, в основном, при работе с базами данных, чтобы обеспечить целостность данных. Например, при выполнении нескольких связанных операций (вставка заказа и обновление остатков на складе) я оборачивал эти действия в транзакцию, чтобы в случае ошибки откатить все изменения.
Пример с использованием PDO:
try {
$pdo->beginTransaction();
$pdo->exec("INSERT INTO orders (user_id, total) VALUES (1, 100)");
$pdo->exec("UPDATE products SET stock = stock - 1 WHERE id = 10");
$pdo->commit();
} catch (Exception $e) {
$pdo->rollBack();
echo "Ошибка: " . $e->getMessage();
}
Такой подход помогает избежать частичного обновления данных и сохраняет консистентность базы.