MySQL添加数据时如果遇到乱码问题,可能是以下几个原因造成的:
1. 数据库字符集与表字符集不一致
查看数据库字符集:show variables like 'character_set_database';查看表字符集:show create table 表名;设置表字符集:alter table 表名 character set 字符集;
2. 客户端字符集与服务器字符集不一致
查看客户端字符集:show variables like 'character_set%';查看服务器字符集:show variables like 'collation%';设置客户端字符集:set names 字符集;
3. 插入的数据含有非法字符
使用utf8mb4字符集可以支持更多字符,包括emoji等特殊字符。设置字符集为utf8mb4:alter table 表名 character set utf8mb4;在程序中添加过滤非法字符的逻辑。