84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
如题,在编程语言中,通常用unicode对中文字符做处理,防止出现乱码,那么在MySQL里,为什么大家都使用utf8_general_ci而不是utf8_unicode_ci呢?
utf8_general_ci
utf8_unicode_ci
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
区别在于字符对比上
请看mysql上面的例子:
对与general来说 ß = s 是为true的
但是对于unicode来说 ß = ss 才是为true的,
其实他们的差别主要在德语和法语上,所以对于我们中国人来说,一般使用general,因为general更快
如果你对德语和法语的对比有更高的要求,才使用unicode,它比general更准确一些(按照德语和法语的标准来说,在对比或者排序上更准确)
看看这个文档:http://dev.mysql.com/doc/refman/5.0/e...
另外还有utf8_bin_ci也是比较常用的哦,在字符对比时,unicode和general都不是大小写敏感的,所以如果要求大小写敏感的话,就使用bin
区别在于字符对比上
请看mysql上面的例子:
对与general来说 ß = s 是为true的
但是对于unicode来说 ß = ss 才是为true的,
其实他们的差别主要在德语和法语上,所以对于我们中国人来说,一般使用general,因为general更快
如果你对德语和法语的对比有更高的要求,才使用unicode,它比general更准确一些(按照德语和法语的标准来说,在对比或者排序上更准确)
看看这个文档:http://dev.mysql.com/doc/refman/5.0/e...
另外还有utf8_bin_ci也是比较常用的哦,在字符对比时,unicode和general都不是大小写敏感的,所以如果要求大小写敏感的话,就使用bin