MySQL中是否存在支持区分大小写的Collation类型。 我在MySQL中拥有所有类型的排序规则,它们的名称末尾都有_ci,因此它们是不敏感的排序规则。提前谢谢。
答案 0 :(得分:75)
根据MySQL手册http://dev.mysql.com/doc/refman/5.0/en/charset-mysql.html,您应该能够将排序规则设置为_cs
以区分大小写。您可以通过执行_cs
查询
SHOW COLLATION WHERE COLLATION LIKE "%_cs"
归类列表
经过一番研究后:
显然MySQL(还)中没有utf8_*_cs
。如果您需要对utf8字段进行区分大小写的排序规则,则应使用utf8_bin
。这会弄乱ORDER BY
,但这可以通过ORDER BY column COLLATE utf8_general_ci
来源:http://forums.mysql.com/read.php?103,19380,200971#msg-200971和http://forums.mysql.com/read.php?103,156527,198794#msg-198794
答案 1 :(得分:10)
尝试以_bin
结尾的归类,例如latin1_bin
或utf8_bin
,具体取决于您的字符集。
答案 2 :(得分:2)
新版本的MySQL(8.0.1及更高版本)(最终)带有一组utf8mb4_*_0900_as_cs
排序规则。
有关它的更多信息here