我正在向用户表(来自许多站点的许多用户)输入数据:
myisam default collation latin1_swedish
...
将该数据导入innodb table utf8_general
我在username,site_id
组合上放置了一个唯一的密钥,但这对同一网站的2个用户失败了:
user 1 dranfog,
user 2 drånfog
如果我跑:
SELECT IF('å' = 'a', 'yep', 'nope');
使用utf8编码直接在目标数据库上,我得到'yep'
。
有关解决此问题的任何提示。我的印象是utf8会将这些视为不同的特征,但事实并非如此。
答案 0 :(得分:8)
以_ci
结尾的归类是大小写(和重音)不敏感。
您可以将排序规则更改为“utf8_binary'
”,以dranfog
的方式处理drånfog
。