有趣生活

当前位置:首页>科技>mysql中支持中文的字符集从零开始学Mysql-字符集和编码

mysql中支持中文的字符集从零开始学Mysql-字符集和编码

发布时间:2026-07-21阅读(1)

导读回顾上篇这里我们先来回顾一下上一篇讲了什么内容:在mysql数据中,字符串的大小比较本质上是通过下面两种方式进行比较,简而言之字符串的大小比较是依赖字符集和....

回顾上篇

这里我们先来回顾一下上一篇讲了什么内容:

  1. 在mysql数据中,字符串的大小比较本质上是通过下面两种方式进行比较,简而言之字符串的大小比较是依赖字符集和比较规则来进行比较的。 将字符统一转为大写或者小写再进行二进制的比较 或者大小写进行不同大小的编码规则编码
  2. 简述和掌握几个比较常用的字符集: ASCII 字符集:收录128个字符, ISO 8859-1 字符集:在ASCII 字符集基础上进行扩展,共256个字符,字符集叫做latin1,也是Mysql5.7之前默认的字符集(Mysql8.0之后默认字符集为utf8mb4) GB2312:首先需要注意的是不仅仅只有“汉字”哦,比较特殊的是采用了变长编码规则,变长编码规则值得是根据字符串的内容进行不同的字符集进行编码,比如啊A中‘啊’使用两个字节编码,A因为可以使用ASCII 字符集表示所以可以只使用一个字节进行编码 GBK 字符集:对于GB2312进行字符集的扩展,其他和GB2312编码规则一致 UTF8字符集:UTF-8规定按照1-4个字节的变长编码方式进行编码,最后UTF8和gbk一样也兼容了ASCII的字符集

提示:这里有一个思考题目那就UTF-8mb3和utf8-mb4的字符集有什么区别?这里也隐藏了一个历史遗留问题带来的坑,如果主要使用Mysql数据库这个坑有必要仔细了解一下,在上篇的文章最后给出答案,这里不再赘述。

  1. 查看字符集命令:show charset;,比如:show charset like big%;
  2. 比较规则查看:show collation [like 匹配模式],比如show collation like utf_%;
  3. 字符集和比较规则的级别分为四种: 服务器级别:可以通过配置文件进行设置,但是启动之后无法修改服务器级别的字符集或者比较规则。 数据库级别:如果没有指定数据库级别比较规则或者字符集,则默认使用服务器的。 表级别:表级别在默认的情况下使用数据库级别的字符集和比较规则。 列级别:列级别规则使用比较少,通常在建表的时候指定,但是通常不建议同一个表使用不同字符集的列。
  4. 最后,我们回顾一下字符集和比较规则的常见命令。
TAGS标签:  mysql  支持  中文  字符集  开始  mysql中支持中文

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图