mysql字符集 排序规则

MySQL字符集详解
本文深入解析MySQL数据库中字符集的使用,重点介绍UTF-8及其变体UTF-8mb4的特点,对比unicode与UTF-8的存储优势。同时,探讨不同排序规则如utf8_unicode_ci与utf8_general_ci在准确度与速度上的权衡,提供实用的建库语句。
  • mysql数据库 字符集 

我们通常使用UTF-8类的字符集

unicode是一种统一的字符表示方式,只要涉及多国字符,通常使用unicode,比如汉字 ‘我’ unicode 表示为15105,在unicode下都是一样的,即统一‘计算机文字’,方便交流。

unicode只是统一规定字符的表示方式,并没有规定如何存储这这些字符,unicode使用固定长度的字节表示字符,导致存储时浪费空间,传输时浪费流量。

所以我们使用utf-8来存储

mysql前版本只用最多3字节存储,即utf-8方式,也叫utf-8mb3。

现在3个字节已经不够了,变为4个字节,即utf-8mb4,utf-8mb4兼容utf-8mb3。

  • 排序规则

主要分为2种 utf_bin和utf_general_ci

bin 是二进制,,区分大小写。

utf8_unicode_ci和utf8_general_ci对中、英文来说没有实质的差别。

utf8_unicode_ci准确度高,但校对速度稍慢。

utf8_general_ci校对速度快,但准确度稍差。不区分大小写。(准确度够用,一般建库选择这个)。

  • 建库语句:

create database xxx default character set utf8mb4 collate utf8mb4_unicode_ci;

create database xxx default character set utf8mb4 collate utf8mb4_general_ci;

转载于:https://www.cnblogs.com/wayland3/p/11009889.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值