首页  >  文章  >  数据库  >  MYSQL中utf8_general_ci和utf8_unicode_ci的区别

MYSQL中utf8_general_ci和utf8_unicode_ci的区别

怪我咯
怪我咯原创
2017-03-31 10:05:461672浏览

看到很多数据库的设计对于中文字符都是选择选用utf8_general_ci而非utf8_unicode_ci?utf8_general_ci和utf8_unicode_ci的区别并不大:utf8_unicode_ci校对更准确,utf8_general_ci速度比较快。它们的差别主要在德语和法语上,对于准确性utf8_general_ci足够了,所以一般选用utf8_general_ci。
详细说明如下:
    utf8_unicode_ci的最主要的特色是支持扩展,即当把一个字母看作与其它字母组合相等时。例如,在德语和一些其它语言中‘ß’等于‘ss’。

    utf8_general_ci是一个遗留的 校对规则,不支持扩展。它仅能够在字符之间进行逐个比较。这意味着utf8_general_ci校对规则进行的比较速度很快,但是与使用utf8_unicode_ci的 校对规则相比,比较正确性较差)。

    两种校对规则之间的区别是,对于utf8_general_ci下面的等式成立:
    ß = s

    但是,对于utf8_unicode_ci下面等式成立:
    ß = ss
因此对于德语和法语utf8_unicode_ci更准确,对于中文没有必要。


以上是MYSQL中utf8_general_ci和utf8_unicode_ci的区别的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn