Имеет ли смысл использовать транзакцию в данном случае?

У меня есть две функции, которые выполняют обычный insert и update записи в бд

user_insert($args); //эта функция добавляет запись в бд
user_update($args);  //эта обновляет запись в базе

Мне нужно если первая функция вызовет ошибку, что бы вторая функция не сработала, так же если вторая выдаст исключение - первая откатилась.

На одном англоязычном форуме видел подобное решение, но оно не было отмечено решением:

$pdo->beginTransaction();
try {
  user_insert($args);
  user_update($args);
  $pdo->commit();
} catch (\PDOException $e) {
    $pdo->rollback();
    throw $e;
}

В данном случае имеет ли смысл beginTransaction(); или как правильно реализовать, то, что я задумал ?


Ответы (0 шт):