|
解決方法是對于包含中文的字段加上"binary"屬性,使之作為二進(jìn)制比較,例如將"name char(10)"改成"name char(10)binary"。
方法二:
如果你使用源碼編譯MySQL,可以編譯MySQL時使用--with--charset=gbk 參數(shù),這樣MySQL就會直接支持中文查找和排序了。
方法三:
可以使用 Mysql 的 locate 函數(shù)來判斷。以上述問題為例,使用方法為:
SELECT * FROM table WHERE locate(field,'李') > 0;
方法四:
把您的Select語句改成這樣,SELECT * FROM TABLE WHERE FIELDS LIKE BINARY '%FIND%'即可
問題出現(xiàn)的原因是: 在MySQL中,進(jìn)行中文排序和查找的時候,對漢字的排序和查找結(jié)果是錯誤的。這種情況在MySQL的很多版本中都存在。如果這個問題不解決,那么MySQL將無法實際處理中文。
出現(xiàn)這個問題的原因是:MySQL在查詢字符串時是大小寫不敏感的,在編繹MySQL時一般以ISO-8859字符集作為默認(rèn)的字符集,因此在比較過程中中文編碼字符大小寫轉(zhuǎn)換造成了這種現(xiàn)象
php技術(shù):mysql 的 like 問題,超強畢殺記!!!,轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。