您现在的位置是:首页 > 编程 > 

MySQL中的utf8,真假?

2025-07-27 12:57:42
MySQL中的utf8,真假? MySQL建表过程中,可能会碰到这个问题,代码语言:javascript代码运行次数:0运行复制Warning | 719 | 'utf8' is currently an alias for the character set UTF8MB, but will be an alias for UTF8MB4 in a future rele

MySQL中的utf8,真假?

MySQL建表过程中,可能会碰到这个问题,

代码语言:javascript代码运行次数:0运行复制
Warning | 719 | 'utf8' is currently an alias for the character set UTF8MB, but will be an alias for UTF8MB4 in a future release. Please cider using UTF8MB4 in order to be unambiguous.

究其原因,MySQL的"utf8"实际上不是真正的UTF-8。"utf8"只支持每个字符最多三个字节,而真正的UTF-8是每个字符最多四个字节。

MySQL之前没修复这个bug,而是在2010年发布了一个叫作"utf8mb4"的字符集,绕过了这个问题。

简单概况:

  • MySQL的"utf8mb4"是真正的"UTF-8"。
  • MySQL的"utf8"是一种"专属的编码",它能够编码的Unicode字符并不多。

所有在使用"utf8"的MySQL和MariaDB用户都应该改用"utf8mb4",不要再使用"utf8"。

可能有朋友会问到什么是编码?什么是UTF-8?

我们都知道,计算机使用0和1来存储文本。比如字符"C"被存成"01000011",那么计算机显示这个字符时需要经过两个步骤:

(1)计算机读取"01000011",得到数字67,因为67被编码成"01000011"。

(2)计算机在Unicode字符集中查67,到了"C"。

同样的,我的电脑将"C"映射成Unicode字符集中的67,我的电脑将67编码成"01000011",并发送给Web服务器。

几乎所有的网络应用都使用了Unicode字符集,因为没有理由使用其他字符集。

Unicode字符集包含了上百万个字符。最简单的编码是UTF-2,每个字符使用2位。这样做最简单,因为一直以来,计算机将2位视为数字,而计算机最在行的就是处理数字。但问题是,这样太浪费空间了。

UTF-8可以节省空间,在UTF-8中,字符"C"只需要8位,一些不常用的字符,比如""需要2位。其他的字符可能使用16位或24位。一篇类似本文这样的文章,如果使用UTF-8编码,占用的空间只有UTF-2的四分之一左右。

归根结底,文章开头提到的问题,就是因为MySQL的"utf8"字符集与其他程序不兼容,因此,如果你在使用MySQL或MariaDB,不要用"utf8"编码,改用"utf8mb4"。

这里提供了一个指南用于将现有数据库的字符编码从"utf8"转成"utf8mb4",

如果只是建表,可以在建表语句中将原来的CHARSET=utf8修改为CHARSET=utf8mb4即可。

如果您认为这篇文章有些帮助,还请不吝点下文章末尾的"点赞"和"在看",或者直接转发朋友圈,

本文参与 腾讯云自媒体同步曝光计划,分享自。原始发表:2025-01-0,如有侵权请联系 cloudcommunity@tencent 删除计算机utf8mysql编码并发

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1202218.html

相关标签:无
上传时间: 2025-07-24 01:33:46
留言与评论(共有 9 条评论)
本站网友 医用酒精
29分钟前 发表
如果您认为这篇文章有些帮助
本站网友 便宜坊烤鸭店
17分钟前 发表
Unicode字符集包含了上百万个字符
本站网友 躁狂抑郁型精神病
10分钟前 发表
这里提供了一个指南用于将现有数据库的字符编码从"utf8"转成"utf8mb4"
本站网友 国内游
12分钟前 发表
如果您认为这篇文章有些帮助
本站网友 67ccc
24分钟前 发表
计算机将2位视为数字
本站网友 界首二手房
23分钟前 发表
如果你在使用MySQL或MariaDB
本站网友 农产品网购
24分钟前 发表
几乎所有的网络应用都使用了Unicode字符集
本站网友 性能力
1秒前 发表
一篇类似本文这样的文章