mysql保存微信昵称特殊字符异常解决方法(已解决)
1.问题描述项目中的一个问题,微信用户注册的时候,微信用户的名称导致 MySQL 数据库插入异常Incorrect string value: '\xF0\x9F\x98\x82\xE6\x81...' for column 'nick_name' at row 1;这是一个用特殊字符的用户用了奇怪的账户名称比如????2. 问题原因因为 utf8 一个字符 3 个字节,但是特殊字符要占用 4 个
·
1.问题描述
项目中的一个问题,微信用户注册的时候,微信用户的名称导致 MySQL 数据库插入异常
Incorrect string value: '\xF0\x9F\x98\x82\xE6\x81...' for column 'nick_name' at row 1;
这是一个用特殊字符的用户
用了奇怪的账户名称比如
🌫
2. 问题原因
因为 utf8 一个字符 3 个字节,但是特殊字符要占用 4 个字节,
就是所 utf8 不够用了
建议使用 utf8mb4 字符集
3. 问题解决
建议在特殊字符的字段,比如微信的用户名,修改编码为 utf8mb4
因为这个是代价最小的修改方案,只修改这个字段
测试成功
更多推荐
已为社区贡献2条内容
所有评论(0)