0
我在customer_customer表中有30行的MySQL數據庫。其中5條記錄中有adm_name作爲Mike。LIKE查詢在將MySQL表的CHARACTER SET更改爲UTF-8後無法使用
mysql> select id from customer_customer where adm_name like '%mike%';
+----+
| id |
+----+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+----+
5 rows in set (0.00 sec)
現在我已經改變字符集我的表爲utf8
mysql> ALTER TABLE customer_customer CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;
Query OK, 30 rows affected (0.03 sec)
Records: 30 Duplicates: 0 Warnings: 0
再次,如果我跑同樣喜歡的查詢,那麼MySQL沒有返回我的任何記錄。
mysql> select id from customer_customer where adm_name like '%mike%';
Empty set (0.00 sec)
我無法理解此行爲。有沒有人遇到過這種情況?我做錯了什麼?
通過查看類似的帖子http://stackoverflow.com/questions/2150256/how-to-change-all-the-tables-in-my-database-to-utf8-character-set,如果我將COLLATE更改爲utf8_unicode_ci,那麼查詢工作正常。 –
因爲CI意味着不區分大小寫的比較。 – Karolis