定义
mysql 的字符集包括 字符集 CHARACTER 和 校对规则COLLATION 两个概念
- 字符集 : 定义存储方式
- 校对规则: 定义比较字符串的方式
- 字符集和校对规则 是一对多的关系(30 多种字符集 70多种校对规则)
查看
查看所有字符集
show character set
查看当前服务器的字符集
show variables like 'character_set_server'
查看 校对规则
show collation like '%gbk%'
查看当前校验规则
show variables like 'collation_server'
校验规则命名约定
字符集名开始, 以 _ci _cs _bin 结束
- _ci 大小写 不敏感
- _cs 大小写敏感
- _bin 二元 ,比较是基于字符编码的值 与language 无关
修改与配置
- 启动配置 my.inf 如:character-set-server = gbk
- 启动项目 mysqld --character-set-server=gbk
- 编译时指定 cmake . -DDFAULT_CHARSET=gbk
- alter database
- alter table
- GBK 双字节编码
- UTF-8 1-4字节编码
- 同一个表的不同字段可以使用不同字符集
网友评论