【发布时间】:2014-01-22 05:45:51
【问题描述】:
在正确使用 mysqli 自动提交时遇到问题。以下是查询。
Table1 和 Table3 是 InnoDB 而 Table2 是 MyISAM
表 2 和表 3 的值已正确插入,但表 1 的值未存储。 运行代码时不会出现错误。
$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();
您何时以及如何使用 autocommit(false) 和 rollback()?
【问题讨论】: