Транзакции php и методы

Рейтинг: 0Ответов: 0Опубликовано: 10.03.2023

Ситуация - если в транзакции пишу insert into... то транзакция работает, если же создаю объект метода который делает insert into , то откат во время ошибки не происходит.

Так работает:

mysqli_begin_transaction($db);     
try {
  insert into ...
  insert into ....
  .....
  mysqli_commit($db);
}catch (Exception $e) {
  echo $e->getMessage();
  mysqli_rollback($db);
}

Так не работает:

mysqli_begin_transaction($db);    
try {
  insertOne();
  insertSecond();
  .....
  mysqli_commit($db);
}catch (Exception $e) {
  echo $e->getMessage();
  mysqli_rollback($db);
}

Во втором примере откат не происходит и вносится в базу , если в одном из инсертов есть ошибка. Можно ли что то сделать, чтоб в каждой транзакции не писать одни и теже insert а создавать объект метода?

Ответы

Ответов пока нет.