插入用户账户表时,报错如下:

### Error updating database.  Cause: java.sql.SQLException: Incorrect string value: '\xF0\xAF\xA0\xA5' for column 'account_name' at row 1
### The error may exist in URL [jar:file:/app.jar!/BOOT-INF/lib/user-service-biz-1.0.27.jar!/mapper/app/UserAccountMapper.xml]
### The error may involve cn.com.user.persistence.basic.UserAccountMapper.insert-Inline
### The error occurred while setting parameters
### SQL: insert into user_account( ... ...

但看日志入参是正常的中文,没有表情符号

method:POST contentType:application/json;charset=utf-8
 params:{"accountType":1,"accountName":"胡勇","account":"11111@qq.com"}

查了一下,查到一篇文章,可供参考:https://blog.csdn.net/weixin_42463676/article/details/82744003
但是还是没理解这个字有什么问题,直到最后把两个字(勇和勇)打印出来(第一个勇字是生僻字,图片上第二个),可以看出确实有不同,这个字应该是一个生僻字,utf8的格式是无法存储的,可换成utf8mb4,可存储表情符号和生僻字。
在这里插入图片描述

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐