看板 Database 關於我們 聯絡資訊
剛剛架好了一個新的環境,用的是 MySQL 4.1.22 並在 complie 時加入了 WITH_CHARSET=utf8 WITH_XCHARSET=all 以下是用 phpmyadmin 查出來的 MySQL 環境變數 [新 MySQL 4.1.22] character set client utf8 character set connection utf8 character set database utf8 character set results utf8 character set server utf8 character set system utf8 collation connection utf8_unicode_ci (整體值) utf8_general_ci collation database utf8_general_ci collation server utf8_general_ci [舊 MySQL 4.1.19] character set client latin1 (整體值) utf8 character set connection utf8 character set database utf8 character set results latin1 (整體值) utf8 character set server utf8 character set system utf8 collation connection utf8_unicode_ci (整體值) utf8_general_ci collation database utf8_general_ci collation server utf8_general_ci 新的 MySQL 4.1.22 在查詢上是沒問題的(不論是 phpmyadmin 或我自己的程式) 先前舊 MySQL 4.1.19 的 my.cnf 裡新增 default-character-set=utf8 然後在 select * from table where name like 'a%' 後加上 COLLATE utf8_bin 即可在 phpmyadmin 上得到正確的結果,但卻失去了 like 不分大小寫的功能 另外在我自己的程式裡加上這句卻會 error 這方面我就不知道是何原因了.. 我想問題就出在 character set client 與 character set results 這兩個 character set results 設到 my.cnf 裡會讓我的 mysql 啓動不能 character set client 設 utf8 會讓用到中文的 SQL 句統統不正常 回傳的資料有中文也都是亂碼 看來我還是做升級搬家會比較好一點 Orz -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.24.124