作者:u47871838 | 来源:互联网 | 2023-09-08 13:36
1.线上碰到个问题,端上切换搜狗输入法后,原来限制的表情符号还能输入。数据库使用的是5.7.22版本的,刚开始以为数据库不支持表情符号导致的,但是看了线上的数据库以及字段,都是支持的。
1.线上碰到个问题,端上切换搜狗输入法后,原来限制的表情符号还能输入。数据库使用的是5.7.22版本的,刚开始以为数据库不支持表情符号导致的,但是看了线上的数据库以及字段,都是支持的。
 
show variables like '%character%';
 
show full columns from driver_reward_record;
 
 
 
 
直接使用sql语句通过navicate 客户端,也是可以插入成功的。但是在程序里面 死活插入不进去,这就郁闷了。
 
     看了下mysql的 mysql-connector-java 版本是5.1.34,大于5.1.13 也是没问题的。数据库、表、字段 都是utf8mb4的,也是正常的。然后怀疑是项目 过滤器编码的问题,但是在项目里面写死然后启动项目,仍然提示插入错误:Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F...' for column ...     这就郁闷了啊~~
 
  然后网上各种找解决方案,最后总算找到了。参考了
  https://blog.csdn.net/KillerAwp/article/details/82356042 这篇文章。 最后的解决方案:
 
修改应用连接字符串(druid):
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
   
      // 必须添加
 
总算解决了。