doumaogui5937 2013-05-06 10:00 采纳率: 100%
浏览 39
已采纳

mySQL CodeIgniter - 语法错误号码:1064 [关闭]

I'm trying to wrap my head around this and I can't seem to figure out how this query returns a syntax error. My knowlegde of mySQL is small as I'm just getting to grips with it.

This is the query I'm trying to execute:

function _delete_leaf_node($id){

$query ="";

$query .=" SELECT @myLeft := lft, @myRight := rgt, @myWidth := rgt - lft + 1";
$query .=" FROM pages";
$query .=" WHERE id =".$id.";";

$query .=" DELETE FROM pages WHERE lft BETWEEN @myLeft AND @myRight;";
$query .=" UPDATE pages SET rgt = rgt - @myWidth WHERE rgt > @myRight;";
$query .=" UPDATE pages SET lft = lft - @myWidth WHERE lft > @myRight;";    

$this->_custom_query($query);

}

This is the error I get returned:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELETE FROM pages WHERE lft = @myLeft UPDATE pages SET rgt = rgt + 1, lft = lft ' at line 1

I have checked if the right id is passed. Perhaps the variables are not set in the proper manner? I just don't know how one would check for that.

Any help would be greatly appreciated.

  • 写回答

1条回答 默认 最新

  • dongzhang1864 2013-05-06 10:22
    关注
    function _delete_leaf_node($id){
    
        $query  =" SELECT @myLeft := lft, @myRight := rgt, @myWidth := rgt - lft + 1";
        $query .=" FROM pages";
        $query .=" WHERE id =".intval($id);
    
        $this->_custom_query($query);
    
        $this->_custom_query("DELETE FROM pages WHERE lft BETWEEN @myLeft AND @myRight");
        $this->_custom_query("UPDATE pages SET rgt = rgt - @myWidth WHERE rgt > @myRight");
        $this->_custom_query("UPDATE pages SET lft = lft - @myWidth WHERE lft > @myRight");
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?