最近开始学mysql,但是输入中文一直显示问号,在查阅了多方资料和自己理解之后,终于解决了这一问题,特写一篇文章来记录。
一、
首先,我们要先确定自己的cmd的默认代码页,这也是最关键的地方,要保证cmd的当前代码页是和mysql的编码是一致的。
第一步,我们打开cmd,在这里右键——属性
然后确认当前代码页
确认当前代码页是gbk
二、
确认之后,就可以开始下一步了,我们登陆mysql,然后输入 show variables like’%char%’;,查看mysql编码。
你的情况可能和我的不一样,因为我的已经改过了,你要做的就是修改你的默认编码以相匹配你的当前代码页。(这里不推荐修改当前代码页,因为现在很多win10注册表里已经没有cmd的修改当前代码页的文件,我自己去创建了以后发现也是没有效果的,所以大家尽可能修改mysql的好)。
三、
接着,我们打开xampp,点击config,点击my.ini(如果你不是xampp集成的mysql,你就去找你的my.ini就行)。
打开:
然后,我们修改my.ini。我在反复尝试之后发现这是可行的,注意看,一定不要看漏了。
首先,修改这里为gbk,
然后,注释掉这里,
四、
最后,回到数据库,输入show variables like’%char%’; 查看是否成功。如果你是将utf8改为gbk的,那这里应该显示这样:
如果不成功的,那么你要重新创建一张表,然后再添加中文数据试试,可能是因为你之前输入的数据并没有支持到新的编码,所以仍然乱码或者问号,但新输入的数据应该就没问题了。
如果还是不行,再试试最后输入 set names gbk;然后重新创建表,输入数据,查看