php -- PDO事务处理

事务处理流程

  1. 开启事务

PDO::beginTransaction

  1. 事务操作

所有的实务操作就是增删改

  1. 事务提交

PDO::commit:成功后提交数据

PDO::rollback:失败后回滚数据

<?php

    //PDO事务处理
    //连接认证
    $pdo = new PDO('mysql:host=localhost;dbname=project','root','root');

    //1.    开启事务
    $res = $pdo->beginTransaction();
    //var_dump($res);

    //2.    事务处理(多条SQL语句执行)
    $sql = "update pro_student set s_age = 28 where s_id = 20";
    $lines = $pdo->exec($sql);
    //var_dump($lines);

    $sql = "select * from pro_student where s_id = 20";
    $stmt = $pdo->query($sql);
    //var_dump($stmt->fetch(PDO::FETCH_ASSOC));

    //3.    提交事务
    if($lines){
        //更新成功
        $pdo->commit();
    }else{
        //更新失败
        echo '失败';
        $pdo->rollback();
    }

注意

  1. 要实现事务处理必须数据表的存储引擎为InnoDB
  2. 事务必须完整(开启à提交)
原文地址:https://www.cnblogs.com/hf8051/p/4672866.html