了解mysql charset和collat​​ion

时间:2012-01-18 13:01:59

标签: mysql character-encoding innodb collation

我在mysql中有一个InnoDB表,其中包含utf8字符集和utf8_general_ci排序规则。 在以下查询之后:

SELECT * FROM `ticket`
WHERE `text` LIKE '%abc%'
ORDER BY `created_date` DESC

它返回包含“äbc”的行以及包含“abc”的行。我试图在桌面上使用utf8_bin整理,但它没有帮助。

我错过了什么?

P.S。我认为问题出在PHP连接字符集中,但在Sequel Pro上执行查询后,我得到了相同的结果。

1 个答案:

答案 0 :(得分:3)

对于unicode整理(utf8_general_ci和utf8_unicode_ci)你有这种平等:

Ä = A
Ö = O
Ü = U

这不是一个错误。

请阅读此http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html和此http://dev.mysql.com/doc/refman/5.0/en/charset-collation-effect.html