MySQL数据库模糊查询查不到数据的一种可能
今天在学习一个项目时出现了数据库模糊查询查不到数据的问题,刚开始以为是代码错误,最后经过摸索才发现是建表时字符集和数据库配置的基本字符集不一致造成的
数据库表的字符集:utf8mb4
数据库配置中的基本字符集:utf8
就是因为两者不一致造成LIKE方法模糊查询查不出来数据,可以改变数据库表的字符集为utf8(不建议修改数据库的基本字符集,一般都是utf8),不过如果数据库表的字符集为utf8mb4时已经插入数据了那么最好重新插入这些数据,如果不重新插入就算将数据库表的字符集改成utf8,模糊查询时还是查不到这些数据,至于为什么就很好理解了,因为这些数据已经是用utf8mb4编码插入的,该了表的字符集有没有改这些数据的编码格式。