utf8_unicode_ci 与utf8_general_ci区别
utf8_unicode_ci和utf8_general_ci对中英文来说没有实质的差别。
utf8_general_ci: 校对速度快,但准确度稍差。
utf8_unicode_ci: 准确度高,但校对速度稍慢。
若数据库中有德语、法语或者俄语需求,需使用utf8_unicode_ci。
其他情况用utf8_general_ci即可。
如果你想使用gb2312编码,那么建议你使用latin1作为数据表的默认字符集,这样就能直接用中文在命令行工具中插入数据,并且可以直接显示出来.而不要使用gb2312或者gbk等字符集,如果担心查询排序等问题,可以使用binary属性约束,例如:
utf8_unicode_ci和utf8_general_ci对中、英文来说没有实质的差别。
utf8_general_ci校对速度快,但准确度稍差。
utf8_unicode_ci准确度高,但校对速度稍慢。
如果你的应用有德语、法语或者俄语,请一定使用utf8_unicode_ci。一般用utf8_general_ci就够了,到现在也没发现问题。。。
Note:
ci是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的。