如何在codeigniter中使用存储过程的结果集?

时间:2016-03-05 18:52:51

标签: php mysql sql codeigniter stored-procedures

我正在尝试使用codeIgniter(3.0.4)调用存储过程(来自mysql)。 我的问题是我总是发出消息“命令不同步;你现在不能运行这个命令”。

这是我的代码

    $this->db->trans_start();
    $sql = "CALL setup_resource('{$p1}','{$p2}','{$p3}',@id)";
    $this->db->query($sql);
    $query = $this->db->query("SELECT @id as my_id");
    $this->db->trans_complete();
    $my_id = 0;
    foreach ($query->result_array() as $row) $my_id = $row['my_id'];

我正在尝试使用SP执行并使用@id retreive我的存储过程返回的ID =>过程似乎我不能在同一个事务中调用另一个查询。

我在很多话题中都看到CI没有正确处理多个查询字符串,并建议使用“next_results()”函数,但结果是相同的(或者我有一条消息“none next_result()你必须使用more_results ()“)。 还看到我应该使用mysqli的multi_query函数,但没有看到它的例子。

有人有这个问题吗? codeIgniter处理它的解决方法是什么?

感谢您的帮助;)

0 个答案:

没有答案