入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

thinkphp curd的事务回滚 一看就会

创建时间:2014-06-19 投稿人: 浏览次数:9003
    /**

      *thinkphp数据库的事务回滚例子

      *这一般用在多表操作,比如:

(1)订单表和其他订单关联信息,删除订单同时也要把订单关联表中的信息删掉,如果说删除了订单表结果在删除订单关联信息表时出现问题,也就是说,订单的关联信息没有删掉,这时就会出现信息不对应,甚至信息的冗余,这时采用事务回滚,如果一个没有删掉,之前的也要回滚,保持记录的对应统一

(2)银行打钱,如果A给B打钱,给Binsert成功了,但是Adelete失败,这时银行就亏大了,明白?此时就要回滚,如果两者其中一者不成立,则都复位

     */
    public function rollback(){
        $M=M("Rollback");
        $M->startTrans();//开启事务
        $array=array("name"=>"hehe","sex"=>"men");
        if($M->add($array) && $M->where("id in (14,15)")->delete())
        {
          echo "操作成功!";
          $M->commit();//提交事务成功
        }else{
          echo "操作失败!";
          $M->rollback();//事务有错回滚
        }

    }


读过的基本好书 推荐给大家,还有优惠券可以领取:
寄语:在学习方面一定要舍得花钱~ 加油~ -----------------------------------

1、PHP核心技术与最佳实践 | 优惠券领取

2、PHP与MySQL程序设计(第4版)| 优惠券领取

3、高性能MYSQL

声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。