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 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程