PHP MYSQLI中事务处理

Posted Evai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP MYSQLI中事务处理相关的知识,希望对你有一定的参考价值。

 

mysql事务处理让所有sql语句执行成功后才去处理,如果有一条没有成功或者报错就会回滚事务,防止敏感操作处理失败。MYSQL中只有INNODB和BDB类型的数据表才能支持事务处理!其它类型是不支持的!

$mysqli->autocommit(FALSE); //关闭自动提交功能
$sql = "UPDATE users SET money = money-300 WHERE username = ‘Mike‘";
$res1 = $mysqli->query($sql);
$res1_rows = $msyqli->affected_rows;
$sql2 = "UPDATE users SET money = money+300 WHERE username = ‘Tom‘";
$res2 = $mysqli->query($sql2);
$res2_rows = $mysqli->affected_rows;
if($res1 && $res1_rows>0 && $res2 && $res2_rows>0){
$msyqli->commit(); //提交事务
echo ‘执行成功‘;
$mysqli->autocommit(TRUE); //开启自动提交功能
else{
//事务回滚
$mysqli->rollback();
echo执行失败;
}

 

以上是关于PHP MYSQLI中事务处理的主要内容,如果未能解决你的问题,请参考以下文章

PHP MYSQLI中事务处理

PHP MySQL 事务捕获错误

PHP mysqli_multi_query 在while循环中的事务

php mysqli 常用函数都有哪些

php mysqli

PHPmysqli扩展整理,包括面向过程和面向对象的比较事务控制批量执行预处理