MySql的字符集学习

1.MySql的字符集包括字符集(CHARACTER)和校验规则(COLLATION)两个概念。字符集是用来定义MySql存储字符串的方式;校验规则是用来定义MySql比较字符串的方式。字符集与校验规则是一对多关系。

2.每个字符集至少应对应一个校验规则,可以使用“ SHOW  COLLATION LIKE ‘%字符集%‘”查看,例如查看GBK字符集的校验规则如下:

技术分享


3. 校验规则命名约定:他们以其相关的字符集名开始,通常包括一个语言名,并且以 “下划线”+ “ci” 或 “cs” 或 “bin”结束 ;
  (1)_ci:大小写不敏感(不区分大小写)
  (2)_cs:大小写敏感(严格区分大小写)
  (3)_bin:二元,即比较是基于字符编码的值而与语言无关。

4.字符集校验规则比较如下:

技术分享

“ERROR 1253 (42000): COLLATION ‘gbk_chinese_ci‘ is not valid for CHARACTER SET ‘utf8‘”错误信息含义是:当前系统字符集为utf8,校验规则gbk_chinese_ci‘不是utf8字符集的校验规则,需要设置字符集为gbk: :

技术分享


不区分大小写比较 :

技术分享

二元比较:

技术分享


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。