代码之家  ›  专栏  ›  技术社区  ›  Martin Bean

在MySQL中,utf8-general-ci和utf8-unicode-ci有什么区别?

  •  2
  • Martin Bean  · 技术社区  · 14 年前

    一段时间以来,我一直使用phpmyadmin来管理我本地的mysql数据库。我开始了解的一件事是数据库的正确字符集。我已经决定了utf-8是最佳的兼容性(因为我的xhtml模板是作为utf-8提供的),但是有一件事让我困惑,那就是phpmyadmin接口中提供的utf-8的各种选项。

    我隔离的两个是:

    • UTF8-广义词
    • UTF8UICONDEODECI

    所以我的问题是: general unicode 变异体 utf8 在MySQL中?(我是来学习的 ci 是不区分大小写的缩写)

    在这件事上任何帮助都是最感激的。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Gumbo    14 年前

    MySQL manual on Unicode Character Sets :

    对于任何Unicode字符集,使用 广义词 排序比 乌努德语 校对。例如,比较 UTF8-广义词 排序规则比 UTF8UICONDEODECI . 原因是 UTF8UICONDEODECI 支持诸如扩展之类的映射;也就是说,当一个字符与其他字符的组合比较时。例如,德语和其他一些语言 ß _157;等于__ ss 艾斯。 UTF8UICONDEODECI 还支持收缩和可忽略的字符。 UTF8-广义词 是不支持扩展、收缩或可忽略字符的旧排序规则。它只能对字符进行一对一的比较。

    参见参考页面 further information and examples .

        2
  •  -2
  •   Assaf Lavie    14 年前

    “@”%!惯性导航与制导 manual discusses this …:)

    其中一个问题是某些操作的速度和准确性。