【发布时间】:2010-05-05 15:28:42
【问题描述】:
我在 codeigniter 中使用get_where() 函数,我得到 mysql 错误,这取决于我设置的限制和偏移量,例如这段代码,
$this->db->get_where('em_user', $whereArr, 30, 0)->num_rows()
返回一个看起来像这样的mysql错误,
错误号:1064
您的 SQL 语法有错误; 检查对应的手册 您的 MySQL 服务器版本 在 'WHERE 附近使用正确的语法
password= 'letmein' LIMIT 1' 在 第 2 行选择 * WHERE
password= 'letmein' 限制 1
但是如果我运行这段代码,
$this->db->get_where('em_user', $whereArr, 30, 30)->num_rows()
它似乎运行良好,似乎运行良好,它没有返回任何结果但我没有收到错误(我假设没有结果是因为偏移量为 30,我的表中只有 2 条记录) .
这段代码产生的sql是这样的,
SELECT * FROM (`em_user`) WHERE `email` = 'your@emailaddress.com' AND `password` = 'letmein' LIMIT 30, 30
我不明白为什么在查询结束时限制为 1 会造成如此多的痛苦,请谁能赐教?
【问题讨论】:
标签: php mysql activerecord codeigniter