zoukankan      html  css  js  c++  java
  • PHP 操作 MySQL 执行数据库事务

    <?php
    $mysqli=new mysqli();//实例化mysqli
    $mysqli->connect('localhost','root','admin','test');
    if(mysqli_connect_error()){
        exit('数据库连接错误,错误信息是.'.mysqli_connect_error());
    }
    $mysqli->set_charset("UTF8");//设置数据库编码
    //首先你必须关闭自动提交数据
    $mysqli->autocommit(false);
    //创建一个SQL语句,必须同时运行成功,不能出现一个成功,一个失败
    $sql .= "UPDATE `friend` SET state=state+5 WHERE id=1;";
    $sql .= "UPDATE `flower` SET tg_flower=flower-5 WHERE id=1;";
    //执行两条SQL语句
    if ($mysqli->multi_query($sql)) {
    //获取第一条SQL一影响的行数
    $success = $mysqli->affected_rows == 1 ? true : false;
    //下移,第二条SQL
    $mysqli->next_result();
    //获取第二条SQL影响的行数
    $success2 = $mysqli->affected_rows == 1 ? true : false;
    //判断是否都正常通过了,两个SQL
    if ($success && $success2) {
    $mysqli->commit();
    echo '完美提交!';
    } else {
    $mysqli->rollback();
    echo '程序出现异常!';}
    } else {
    echo "SQL语句有误:".$mysqli->errno.$mysqli->error;
    }
    //最后还必须开启自动提交
    $mysqli->autocommit(true);
    $result->free();//释放查询内存(销毁)
    $mysqli->close();//别忘了关闭你的"小资源";
    ?>
  • 相关阅读:
    初识Qgis
    特征向量与特征值及其应用
    练习 |委托方在每个月重复委案率
    Redis命令总结
    sharepoint2013 Restore-SPSite 报错,采用数据库还原
    MySql定期存档数据
    PostgreSQL的 fdw 跨库使用
    java&c# dec 加密,通用
    TypeScript
    CentOS挂载windows共享文件夹
  • 原文地址:https://www.cnblogs.com/ilookbo/p/5669973.html
Copyright © 2011-2022 走看看