mysqli事务实例

数据库事务 (Database Transaction) ,是指作为单个逻辑工作单元执行的一系列 操作 ,要么完全地执行,要么完全地不执行。 
<?php
$mysqli=new mysqli('localhost','root','root','test1');
if($mysqli->connect_error)
{
    die ("连接失败".$mysqli->error);
}
//事务一旦提交将无法回滚

$mysqli->autocommit(false);//将提交设置为false(默认不提交)

$sql1="update account set balance=balance-1 where id=0";
$sql2="update account set balance=balance+1 where id=2";
//如将id=1的资金减一放入id=2的资金中,两条sql语句必须都执行,则需用到事务
$b1=$mysqli->query($sql1);
$b2=$mysqli->query($sql2);

if(!$b1||!$b2)
{
    echo "失败".$mysqli->error;

    $mysqli->rollback();//回滚
}
else
{
    echo "成功";
    $mysqli->commit();//提交
}

$mysqli->close();
?>

猜你喜欢

转载自blog.csdn.net/zch3210/article/details/77099825