我可能曾在 mysql 中與 Group BY 一起工作過,但最近我收到了 Group By 的問題。我從許多站點(diǎn)進(jìn)行了搜索,發(fā)現(xiàn)問題是由于升級了啟用它的 mysql 版本而在舊版本中它被禁用了。我不會使用查詢而是從代碼中刪除它。我也不想從 my.cnf 中刪除,因?yàn)楫?dāng)網(wǎng)站上線時它會再次出現(xiàn)。所以請建議我一個至少適用于 codeigniter 的解決方案。我會感謝你:-)我試過下面的查詢:mysql > SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));它起作用了,但是當(dāng)服務(wù)器重新啟動時,問題再次出現(xiàn)。
1 回答

子衿沉夜
TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個贊
Codeigniter 有以下stricton選項(xiàng)application/config/database.php:
$db['default'] = array(
...
'stricton' => FALSE, // forces 'Strict Mode' connections
...
);
或者你可以sql_mode像這樣禁用參數(shù):
$this->db->query('SET SESSION sql_mode = ""');
// ONLY_FULL_GROUP_BY
$this->db->query('SET SESSION sql_mode =
REPLACE(REPLACE(REPLACE(
@@sql_mode,
"ONLY_FULL_GROUP_BY,", ""),
",ONLY_FULL_GROUP_BY", ""),
"ONLY_FULL_GROUP_BY", "")');
- 1 回答
- 0 關(guān)注
- 157 瀏覽
添加回答
舉報(bào)
0/150
提交
取消