查询

mysqli::autocommit()函数—用法及示例

「 设置或获取当前连接的自动提交状态 」


mysqli::autocommit()函数用于设置或获取当前连接的自动提交状态。自动提交是指每次执行一个SQL语句后是否自动将结果提交到数据库。

用法:

bool mysqli::autocommit ( bool $mode )

参数:

  • $mode:布尔值,表示自动提交的状态。如果为true,则开启自动提交;如果为false,则关闭自动提交。

返回值:

  • 如果成功设置自动提交状态,则返回true;如果失败,则返回false。

示例:

// 创建数据库连接
$conn = new mysqli("localhost", "username", "password", "database");

// 检查连接是否成功
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}

// 关闭自动提交
$conn->autocommit(false);

// 执行一系列的SQL语句
$sql1 = "INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')";
$sql2 = "UPDATE users SET email='johndoe@example.com' WHERE id=1";

if ($conn->query($sql1) === TRUE && $conn->query($sql2) === TRUE) {
    // 提交事务
    $conn->commit();
    echo "事务提交成功";
} else {
    // 回滚事务
    $conn->rollback();
    echo "事务回滚";
}

// 关闭数据库连接
$conn->close();

在上面的示例中,我们首先创建了一个数据库连接。然后,通过调用autocommit(false)方法关闭了自动提交。接下来,我们执行了两个SQL语句,如果两个SQL语句都执行成功,则通过调用commit()方法提交事务。如果其中一个SQL语句执行失败,则通过调用rollback()方法回滚事务。最后,我们关闭了数据库连接。

注意:autocommit()方法只适用于mysqli对象,并且只对当前连接有效。

补充纠错
热门PHP函数
分享链接