2010-01-11 30 views
3

我正在寻找一个MySQL的排序规则UTF8这是不区分大小写之间的“A”和“A”(或区分更普遍,umlauted之间/重音字符和他们的“纯”形式)。 utf8_general_ci不前,utf8_bin后者,机器人没有做到这些。如果没有这样的整理,我能做些什么,以获得在WHERE条款尽可能接近?寻找不区分大小写MySQL的整理,其中“一”!=“A”

回答

6

我的建议是使用utf8_bin和你的WHERE子句中,迫使你比较大写或小写的两侧。

+0

整洁。谢谢 :-) – Simon 2010-01-11 20:10:18

-1

你可以尝试utf8_swedish_ci,它既是不区分大小写和一个ä区分(但对待例如üŸ)。

排序规则是依赖于语言,似乎德国人并没有自己的collation in MySQL。 (我看了一下您的个人资料,这表示你是德国人。)

0

在这里工作正常utf8_german2_ci的归类:

SELECT * FROM tablename WHERE fieldname LIKE "würz%" COLLATE utf8_german2_ci 
0

我检查utf8_bin这样

CREATE TABLE tmp2 (utf8_bin VARCHAR(20) CHARACTER SET utf8 COLLATE utf8_bin); 
INSERT INTO tmp2 VALUES ('nói'); 

select * from tmp2 where utf8_bin='noi';