1

使用活动记录时如何忽略 codeigniter 中的反引号?我需要按情况订购

case when roll_number is null then 1 else 0 end,

哪个代码点火器使它成为

ORDER BY `case` when roll_number is null then 1 else 0 end

这给了我一个错误。请帮忙

4

3 回答 3

13

这可能有点旧,但是对于正在寻找答案的人,您可以添加

$this->db->_protect_identifiers=false;

请注意,这将删除此查询的所有反引号

于 2014-05-02T12:13:11.397 回答
2

文档

$this->db->select() 接受可选的第二个参数。如果您将其设置为 FALSE,CodeIgniter 将不会尝试使用反引号保护您的字段或表名。如果您需要复合选择语句,这很有用。

于 2013-08-06T13:15:10.650 回答
1

谢谢你的回答...

我发现在使用时的活动记录中$this->db->order_by()你不能跳过反引号。

所以最终使用$this->db->query($sql);了我将正常的mysql查询分配给$sql变量的地方

于 2013-08-07T06:26:14.137 回答