1

以下のコードで mysqli_multi_query 関数を使用しようとしていますが、次のエラーが発生します。

コマンドが同期していません。現在、このコマンドを実行することはできません

// add call stats to incoming nodes
        $sql = "INSERT INTO `" . node_name_formatter($i_route) . "` ";
        $sql .= "            (`timeperiod`, ";
        $sql .= "             `exchange_id`, ";
        $sql .= "             `calls_in`) ";
        $sql .= "VALUES      ('" . date('Y-m-d H:i:s', $time) . "', ";
        $sql .= "             '$exchange_id', ";
        $sql .= "             '1') ";
        $sql .= "ON DUPLICATE KEY UPDATE ";
        $sql .= "             `calls_in` = `calls_in`+1;";

// add call stats to outgoing nodes
        $sql .= "INSERT INTO `" . node_name_formatter($o_route) . "` ";
        $sql .= "            (`timeperiod`, ";
        $sql .= "             `exchange_id`, ";
        $sql .= "             `calls_out`) ";
        $sql .= "VALUES      ('" . date('Y-m-d H:i:s', $time) . "', ";
        $sql .= "             '$exchange_id', ";
        $sql .= "             '1') ";
        $sql .= "ON DUPLICATE KEY UPDATE ";
        $sql .= "             `calls_out` = `calls_out`+1";

       // echo $sql . '<br><br>';
        mysqli_multi_query($connection, $sql) or die(mysqli_error($connection));

PHPマニュアルに記載されているとおりに、このクエリを実行しています。また、この関数を使用するか、通常の mysqli_query の方法で 2 つの別々のクエリを実行する方が良いですか?

4

1 に答える 1