mysqli 批量执行多条语句

可以一次性的执行多个操作或取回多个结果集。

实例:

<?php
$mysqli = new mysqli("localhost", "root", "111111", "test");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

/* multi_query执行一个或多个针对数据库的查询。多个查询用分号进行分隔。 */
$query  = "SELECT * from test where id = 1;";
$query .= "SELECT name FROM test";

/* 批量执行查询 ,如果第一个查询失败则返回 FALSE。*/
if ($mysqli->multi_query($query)) {
    do {
        /* 获取第一个结果集 */
        if ($result = $mysqli->store_result()) {
            while ($row = $result->fetch_row()) {
                printf("%s\n", $row[0]);
            }
            $result->free();
        }
        /* 检查一个多查询是否有更多的结果 */
        if ($mysqli->more_results()) {
            printf("-----------------\n");
        }
        //准备下一个结果集
    } while ($mysqli->next_result());
}

/* close connection */
$mysqli->close();
?>

你可能感兴趣的:(mysqli 批量执行多条语句)