问题描述
今天项目上线,一直由用户反馈登录不上的问题,查了日志后,发现是个别用户微信昵称中包含图片导致的sql报错:SQLSTATE[HY000]: General error: 1366 Incorrect string value。
解决方案
修改数据库编码:设置数据库相应表的编码为utf8mb4,最好把项目中的也修改为utf8mb4,保持一致
如果还不行,有可能是这个字段所在的列字符集没有被修改掉,再针对列修改一下就可以了。
ALTER TABLE table_name CHANGE nickname nickname VARCHAR(255) CHARACTER SET utf8mb4;
问题解决