哪个utf8校对最好?

arm*_*adi 25 mysql collation

我想要一个UTF8排序规则来支持:

  • 英语
  • 波斯语
  • 阿拉伯
  • 法国
  • 日本
  • 中文

是否UTF8_GENERAL_CI支持所有这些语言?

kni*_*ttl 34

对,那是正确的.UTF-8是Unicode字符集的编码,它支持世界上几乎所有语言.

我认为唯一的区别在于对结果进行排序,不同的字母可能在其他语言中以不同的顺序出现(重音符号,变音符号等).此外,比较aä行为可能不同的另一个排序规则.

_ci后缀是指排序和比较发生不区分大小写.

您可能会对http://www.collat​​ion-charts.org/感兴趣.

  • 非常感谢好友 :) 还有一个问题:你的意思是如果我选择 utf8_general 排序规则,那么用英语和波斯语或其他语言对我的记录进行排序会有问题吗? (2认同)
  • 英语和法语的排序应该差不多,我不知道其他的(波斯语、阿拉伯语、日语、中文),因为它们不使用普通的英语字符。你喜欢它们如何排序?在英文字母之后,中间,之前?明白我的意思了吗? (2认同)

Ais*_*tis 8

由于UTF8_GENERAL_CI是一个很好的决定,前一段时间。它现在有一些缺点。

MySQL 的 UTF8 实际上使用 3 个字节而不是 4 个字节,这是您需要的符号,如表情符号和新的亚洲字符。

所以 MySQL 有一个名为utf8mb4的新字符集,它实际上符合 UTF8 定义。

为了能够完全支持亚洲语言,您需要选择 utf8mb4。

如果您关心多种语言的正确排序,请使用utf8mb4_unicodeutf8mb4_unicode_ci代替general。

您可以在 utf8_general_ci 和 utf8_unicode_ci 的区别什么中找到更详细的答案