Właściwe użycie php mysqli autocommit i rollback

Problemy z prawidłowym użyciem funkcji automatycznego zatwierdzania mysqli. Poniżej znajdują się zapytania.

Tabela 1 i Tabela 3 to InnoDB, natomiast Tabela 2 to MyISAM

Wartości do tabeli 2 i tabeli 3 są wstawiane poprawnie, ale wartości do tabeli 1 nie są zapisywane. Podczas uruchamiania kodu nie występują błędy.

$dbconnect->autocommit(false);

$stmt = $dbconnect->prepare("INSERT INTO `table1`(`col1`,`col2`) VALUES (?,?)");
$stmt->bind_param('ss',$val1,$val2);
$stmt->execute();
$dbconnect->rollback();

$stmt = $dbconnect->prepare("INSERT INTO `table2`(`col1`,`col2`) VALUES (?,?)");
$stmt->bind_param('ss',$val3,$val4);
$stmt->execute();
$dbconnect->rollback();

$stmt = $dbconnect->prepare("INSERT INTO `table3`(`col1`,`col2`) VALUES (?,?)");
$stmt->bind_param('ss',$val5,$val6);
$stmt->execute();

$dbconnect->commit();

Kiedy i jak używasz autocommit (false) i rollback ()?

questionAnswers(1)

yourAnswerToTheQuestion