对比

  1. utf8mb4_general_ci : 不区分大小写, utf8mb4_general_cs 区分大小写
  2. utf8mb4_bin : 将字符串每个字符串用二进制数据编译存储,区分大小写,而且可以存二进制的内容。
  3. utf8mb4_unicode_ci : 校对规则仅部分支持Unicode校对规则算法,一些字符还是不能支持;utf8mb4_unicode_ci不能完全支持组合的记号。

说明

  • ci 是 case insensitive, 即 "大小写不敏感", a 和 A 会在字符判断中会被当做一样的。
  • bin 是二进制, a 和 A 会别区别对待。(例如你运行:SELECT * FROM table WHERE txt = 'a', 那么在utf8mb4_bin中你就找不到 txt = 'A' 的那一行, 而 utf8mb4_general_ci 则可以。)
  • utf8mb4_general_ci 是一个遗留的校对规则,不支持扩展,它仅能够在字符之间进行逐个比较。这意味着utf8mb4_general_ci校对规则进行的比较速度很快,但是与使用 utf8mb4_unicode_ci的校对规则相比,比较正确性较差。

应用上的差别

  1. 对于一种语言仅当使用 utf8mb4_unicode_ci 排序做的不好时,才执行与具体语言相关的utf8mb4字符集校对规则。例如,对于德语和法语,utf8mb4_unicode_ci工作的很好,因此不再需要为这两种语言创建特殊的utf8mb4校对规则。
  2. utf8mb4_general_ci 也适用德语、法语或者俄语,但会有不准。如果你的应用能够接受这些,那么应该使用 utf8mb4_general_ci,因为它速度快。否则,使用utf8mb4_unicode_ci,因为它比较准确。

使用

utf8mb4_unicode_ci比较准确,utf8mb4_general_ci速度比较快。通常情况下,新建数据库时一般选用 utf8mb4_general_ci 就可以了

utf8mb4_unicode_ci、utf8mb4_general_ci的区别总结相关推荐

  1. Mybatis_plus的一些介绍

    这里写目录标题 建立数据库 utf8mb4是什麽?为什么要用这个呢? utf8mb4_unicode_ci.utf8mb4_general_ci的区别总结 数据库连接配置文件 创建实体类模型 sql日 ...

  2. MySQL排序规则批量修改

    排序规则选择 mysql中utf8mb4_general_ci与utf8mb4_unicode_ci有什么区别呢? 为什么大家都使用utf8mb4_general_ci而不是utf8mb4_unico ...

  3. 【Mysql】utf8与utf8mb4区别,utf8mb4_bin、utf8mb4_general_ci、utf8mb4_unicode_ci区别

    一.utf8与utf8mb4区别 UTF8 UTF8mb4 使用1~4个字节,变长的编码格式 mb4即 most bytes 4,使用4个字节来表示完整的UTF-8 最大字符长度为 3 字节,如果遇到 ...

  4. MySQL几种编码格式的区别(utf8、utf8mb4、utf8mb4_general_ci、utf8mb4_unicode_ci 、utf8mb4_0900_ai_ci)

    存储字符集 utf8 和 utf8mb4 utf8 是 Mysql 中的一种字符集,只支持最长三个字节的 UTF-8 字符,也就是 Unicode 中的基本多文本平面. 要在 Mysql 中保存 4 ...

  5. Mysql的utf8与utf8mb4区别,utf8mb4_bin、utf8mb4_general_ci、utf8mb4_unicode_ci区别

    UTF-8是使用1~4个字节,一种变长的编码格式,字符编码.mb4即 most bytes 4,使用4个字节来表示完整的UTF-8. mysql的 utf8 编码最大字符长度为 3 字节,如果遇到 4 ...

  6. mysql utf8mb4 bin_Mysql的utf8与utf8mb4区别,utf8mb4_bin、utf8mb4_general_ci与utf8mb4_unicode_ci的选择...

    utf8 与 utf8mb4 标准的 UTF-8 字符集编码是可以用 1~4 个字节去编码21位字符,是一种变长的编码格式,这几乎包含了是世界上所有能看见的语言了.然而在MySQL里实现的utf8最长 ...

  7. MySQL 编码:utf8 与 utf8mb4,utf8mb4_unicode_ci 与 utf8mb4_general_ci

    参考:mysql字符集小结 utf8mb4 已成为 MySQL 8.0 的默认字符集,在MySQL 8.0.1及更高版本中将 utf8mb4_0900_ai_ci 作为默认排序规则. 新项目只考虑 u ...

  8. MySQL DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci utf8mb4_bin utf8mb4_general_ci

    在mysql中执行show create table <tablename>指令,可以看到一张表的建表语句,example如下: CREATE TABLE `table1` (`id` b ...

  9. MySQL常用排序规则utf8mb4_general_ci、utf8mb4_unicode_ci、utf8mb4_bin

    文章目录 一.MySQL常用排序规则简介 二.修改字符集及排序规则 1.修改表字符集及排序规则 2.修改字段字符集及排序规则 一.MySQL常用排序规则简介 UTF-8是使用1~4个字节,一种变长的编 ...

最新文章

  1. sudo配置文件详解及实战
  2. 服务器声卡图标显示x,win10电脑中桌面扬声器图标显示X标记怎么修复
  3. MySQL自学2018/05/02-数据类型
  4. mysql常见面试题
  5. canvas在舞台上点击后图片旋转_View绘制系列(10)Canvas基础变换
  6. 线程池中的线程复用原理
  7. 关于spring boot多张表建立外健的讨论
  8. 收藏 | 计算机视觉四大基本任务(分类、定位、检测、分割)
  9. 手机modem开发(28)---开发电信VoLTE开关默认值设置
  10. eclipse和maven
  11. 碎片试自学软件测试?我靠自己整理的这套方,案既充实了自己也得到了涨薪
  12. B站上的github视频教程笔记(包含两个B站视频,我觉得看这两个B站视频,github从原理到操作都可以会了)
  13. docker安装qq
  14. 系统规划与管理师历年论文
  15. [CF1031E]Triple Flips
  16. Suspending Methods【暂停方法队列说明】
  17. Windows Server 2003 AGP纹理加速无法打开问题可行的解决方案
  18. 信号处理--sinc函数
  19. git log 详解
  20. Matlab迭代算法实现

热门文章

  1. 改变el-input框的样式(去掉边框),及scoped实现原理
  2. linux系统下(x86_64)安装jdk 1.6(jdk-6u45-linux-x64.bin)
  3. python爬虫案例分析:爬取肯德基门店地址数据导入csv文件并最终用excel文档呈现
  4. Bibtex格式说明
  5. 阿里巴巴高效的页面动画解决方案——Ant Motion Design
  6. Linux rz命令安装失败解决方法
  7. Python时间序列LSTM预测系列教程(6)-单变量
  8. 【表单】表单数据的提交和处理
  9. oracle关于索引
  10. 液态金属驱动机器人研究取得进展