php mysqli_autocommit()使用实例

时间:2016-07-17
php mysqli_autocommit()函数用于开启或关闭自动提交数据库修改。本文章向大家介绍mysqli_autocommit()函数的使用方法和基本使用实例,需要的朋友可以参考一下。

mysqli_autocommit()介绍

mysqli_autocommit()用于设置是否立即执行提交SQL语句,默认是立即执行提交SQL语句的,我们可以使用该函数设置不立即执行SQL语句,例如:

mysqli_autocommit($con,FALSE);

上面代码表示关闭自动提交。

语法:

mysqli_commit(connection,status);

参数:

参数 描述
connection 必需。规定要使用的 MySQL 连接。
status 可选。是否自定提交,可选值为true和false,默认是true.

mysqli_autocommit()实例

<?php

    $mysqli = new mysqli("localhost", "username", "password",
                         "mydatabase");

    $query = "CREATE TEMPORARY TABLE friends (name VARCHAR(50), age INT) TYPE=InnoDb";

    mysqli_query($mysqli, $query);

    // 关闭自动提交 http://www.manongjc.com/article/1204.html
    mysqli_autocommit($mysqli, false);

    $friends = array(
                    array("name" => "Max",
                          "age" => 22),
                    array("name" => "Cliff",
                          "age" => 45),
                    array("name" => "Hollie",
                          "age" => 18));

    foreach($friends as $friend) {
        $query = "INSERT INTO friends VALUES('{$friend['name']}',{$friend['age']})";
        mysqli_query($mysqli, $query);
    }
    //提交事务 http://www.manongjc.com
    mysqli_commit($mysqli);

    $result = mysqli_query($mysqli, "SELECT COUNT(*) FROM friends");
    $rows = mysqli_num_rows($result);

    echo "There are $rows rows(s) in the table (after rollback)<BR/>\n";

    mysqli_close($mysqli);

?>