如何在调用一个模型方法时更改Kohana框架内的mysql Delimiter?

时间:2015-10-20 16:00:48

标签: mysql kohana delimiter kohana-3 kohana-3.3

我有一个方法必须创建mysql过程,然后运行它。问题是改变分隔符

public function doSomeThing(){
    $run = array();
    $run[] = DB::query(null, "DELIMITER $$");
    //... here we continue of pushing more commands
    /**
     * @var Database_Query[] $run
     */
    foreach($run as $command){
        $command->execute();
    }
}

我看到异常:

  

Database_Exception [1064]:您的SQL语法有错误;   检查与您的MySQL服务器版本对应的手册   正确的语法,使用附近的DELIMITER $$'在第1行[DELIMITER $$]

我做错了什么?感谢

1 个答案:

答案 0 :(得分:3)

正如您在this answer中看到的那样,您无法通过PHP使用DELIMITER,因为它是命令行语句。只需将其删除并使用一系列查询(Kohana遗憾地does not support multiple queries通过一次调用DB