问题描述:MySQL字符集为UTF-8,控制台显示结果的中文字符仍然会出现乱码,如何解决?
详细描述:安装MySQL的时候选择了UTF8的字符集,为了方便数据库维护,所有字符集也都设置了UTF8的字符集,并且创建数据库和数据表的时候都声明了UTF8的字符集,但是在MySQL控制台查询插入的记录的时候,中文字符就乱码了,如何解决呢?
可以看到除character_set_filesystem外的其他字符集都已设置为UTF-8
现在存在一个t_fruit表,其中存在中文字符,在数据库管理工具navicat中显示如下:
现在我们在控制台中查看表中数据,如下所示:
我们看到,中文字符乱码,无法正常显示,这是因为系统字符集(GBK)和数据库字符集(UTF-8)不一致导致
那么我们要如何解决这个问题呢?其实很简单,只需要登录MySQL控制台后输入这行命令临时修改MySQL结果字符集就可以了:
set character_set_results=’GBK’;
或者去mysql的安装文件下my.ini 找到[client] 将default-character-set修改成gbk就可以了
可以看到,通过修改字符集,中文字符正常显示
其余乱码问题可参考以下文章: