php - mysqli_multi_query 不返回任何值

标签 php mysql codeigniter mysqli

我在 mysqli_multi_query 的帮助下触发了以下查询。哪个执行正确但没有返回任何值。它返回空白。 mysqli_multi_query 有什么问题,或者是否有任何替代方法可以在 codeigniter 中触发多个查询。

   $sql="LOCK TABLE xp_subunit WRITE; ";
    $sql .= "SELECT @myLeft := ".$_GET['lft'].", @myRight :=  ".$_GET['rgt'].", @myWidth :=  ".$_GET['lft']." - lft + 1
    FROM xp_subunit
    WHERE id =".$_GET['id']."; ";

    $sql .= "DELETE FROM xp_subunit WHERE lft BETWEEN @myLeft AND @myRight; ";

    $sql .= "UPDATE xp_subunit SET rgt = rgt - @myWidth WHERE rgt > @myRight; ";
    $sql .= "UPDATE xp_subunit SET lft = lft - @myWidth WHERE lft > @myRight; ";
    $sql.="UNLOCK TABLES;";

    //echo $sql;
    $query = $this->db->mysqli_multi_query($sql);

最佳答案

只需尝试以下示例。,

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

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

$query  = "SELECT CURRENT_USER();";
$query .= "SELECT Name FROM City ORDER BY ID LIMIT 20, 5";

/* execute multi query */
$mysqli->multi_query($query);
?>

我认为这可能会帮助您找到解决方案。

关于php - mysqli_multi_query 不返回任何值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11699785/

相关文章:

php - 插入后使用 fetch 时出现 PDO 一般错误

php - 从数据库获取数据以创建表 - PHP

javascript - 表单值未插入到我的数据库中

php - mysqli_connect()上的PHP fatal error ;

mysql - 如何将 10 GB 数据转储加载到表中

php - Codeigniter/迁移不起作用

php - 如何同步同一台机器上不同MySQL数据库的两个表?

php - Mysql 文本到日期不起作用

mysql - 使用循环将多个相同形式的数组插入到一个表中

php - 当数据已存在时,使用 Codeigniter 停止插入数据库