mysql存储 微信昵称(含有emoji表情) 报错 解决

本文讨论了在使用MySQL存储包含emoji表情的微信昵称时遇到的问题。由于emoji表情使用4个字节编码,而mysql默认的utf-8编码只能存储3个字节的数据,导致无法直接存储emoji。解决方法有两种:一是过滤掉emoji表情,二是将数据库编码改为utf8mb4,后者是utf8的超集,可以完美兼容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

做的项目,涉及到存储微信昵称、emoji表情,发现这个坑,
b06e7b9e0b400156b03d0ba91a51267467c.jpg

 

emoji表情、微信昵称存储mysql到utf-8字段必须要做一下处理。

emoji表情是用4个字节编码,蛋疼的mysql版本默认varchar字段属于utf-8只能用存进3个字节编码的字符串内容。

这个时候,要么过滤emoji表情,要么改数据库编码为utf8mb4,

好在utf8mb4是utf8的超集,除了将编码改为utf8mb4外不需要做其他转换。

转载于:https://my.oschina.net/u/3771868/blog/2236718

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值