Mysql中的排序规则utf8_unicode_ci、utf8_general_ci的区别

utf8_unicode_ci和utf8_general_ci对中、英文来讲没有实质的差异。mysql

utf8_general_ci 校对速度快,但准确度稍差。sql

utf8_unicode_ci 准确度高,但校对速度稍慢。ide

若是你的应用有德语、法语或者俄语,请必定使用utf8_unicode_ci。通常用utf8_general_ci就够了。spa

 

mysql5.x 编译安装时也须要指定排序规则  -DDEFAULT_COLLATION=utf8_general_cicode




附:排序

ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当作同样的;ci

bin 是二进制, a 和 A 会别区别对待。unicode

例如你运行:字符串

SELECT * FROM table WHERE txt = 'a'it

那么在utf8_bin中你就找不到 txt = 'A' 的那一行, 而 utf8_general_ci 则能够。

utf8_general_ci 不区分大小写,这个你在注册用户名和邮箱的时候就要使用。

utf8_general_cs 区分大小写,若是用户名和邮箱用这个 就会照成不良后果

utf8_bin:字符串每一个字符串用二进制数据编译存储。 区分大小写,并且能够存二进制的内容

相关文章
相关标签/搜索