记一次项目中遇到的问题
错误的大体意思是user_name字段是不正确的字符串值。
错误场景
在保存使用小程序的微信用户名称时,如果就普通的字符串不会有什么问题,但是在小程序测试过程中一个测试号的微信名称带有表情符号,然后保存到数据库的时候就报该异常了。
解决办法
utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。
针对字段修改编码格式(推荐使用)
数据库表对应字段上修改编码格式为utf8mb4,命令示例如下:
ALTER TABLE name CHANGE 'name' VARCHAR(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;