所有语言的Mysql colation

Ped*_*Luz 19 mysql collation

我目前正在开发一个网站,它将显示世界上几乎所有语言的内容.我在选择要在mysql中定义的最佳排序规则时遇到问题.

哪一个是最好的支持所有字符??? 还是最准确的???

或者最好将所有字符转换为unicode?

谢谢

sto*_*one 19

我通常使用8位UCS/Unicode转换格式,适用于任何(最好的)语言

utf8_general_ci
Run Code Online (Sandbox Code Playgroud)

http://dev.mysql.com/doc/refman/5.0/en/charset-unicode.html

  • 我想建议使用utf8_unicode_ci而不是utf8_general_ci.有关为什么unicode比一般更好的信息@ http://stackoverflow.com/questions/766809/whats-the-difference-between-utf8-general-ci-and-utf8-unicode-ci (3认同)

Ger*_*bus 9

公认的答案是错误的(也许在2009年是正确的)。

utf8mb4_unicode_ci 是用于广泛语言支持的最佳编码。

推理和佐证:

您要使用utf8mb4而不是utf8因为后者仅支持3个字节的字符,并且要支持4个字节的字符。(参考)

您要使用unicode而不是general因为后者永远不会正确排序。(参考)

  • 谢谢!但是,默认情况下对每个数据库/表执行此操作有什么缺点?与使用默认的 mysql 设置(我猜是 latin1)相比,它是否使用更多空间或者会使我的查询/搜索效率低下 (2认同)