1. 程式人生 > >MySQL Illegal mix of collations for operation 'like'

MySQL Illegal mix of collations for operation 'like'

今天弄搜尋部落格功能的時候,由於採用的是MySQL的模糊查詢,而且查詢覆蓋了型別為datetime這個欄位,導致出現MySQL Illegal mix of collations for operation 'like'這個錯誤

現象:

1、查不出資料

2、後臺報錯

 

現象解釋:

在 MySQL 5.5 以上, 若欄位型別 Type 是 time,date,datetime 

在 select時如果使用 like '%中文%' 會出現 Illegal mix of collations for operation 'like'

在程式設計時要對每個欄位進行查詢,

在執行時可能就會出現時間欄位 like '%中文%' 這種語法,

在舊版的 MySQL 是不會出現錯誤的.

 

解決方案:

升到 MySQL 5.5 以上, 必需改成 like binary '%中文%' 即可避免出現錯誤. 

 

參考網站:https://www.cnblogs.com/install/p/4417527.html