在CMD中操作mysql数据库出现中文乱码解决方案

百度了一下。。有说将cmd字符编码用chcp命令改为65001(utf8字符编码),可这样之后根本无法输入中文,查询出的中问结果依旧乱码 。

其实,只要保证cmd客户端和MySQL两者编码一致即可。

但现实是cmd默认的是gbk(cmd属性可以看到中文操作系统下面是gbk编码),而mySQL一般是utf8(我的也是),之前一直进入误区,想要更改cmd的字符编码,可是并不能行得通。网友中提到在mysql中关于客户端编码问题,只需在cmd里告诉mysql服务器我客户端这边编码和想要的结果集编码即可。

具体步骤:

1、win+r进入cmd,然后切到mysql安装目录的bin文件夹下(或者直接打开我的电脑找到bin文件夹,在上方地址栏输入cmd);

2、输入 mysql -uroot -p,然后按提示输入密码计入数据库;

3、设置编码;

此时输入 set character_set_client=gbk;告诉我客户端这边的文字编码

再输入set character_set_results=gbk; 告诉mysql希望返回的结果集编码;实验中发现只要客户端是gbk编码的,只要设置这个就可以解决乱码这个问题。

还有另外一个好用的命令可以同时达到上面两条指令的效果:

set charset gbk;//和上面两个效果一致。

大功告成!去插入中文字段试试吧!

PS:下面在看一个简单的方法,两行代码搞定! 

 mysql在cmd显示中文乱码

 cmd默认的编码为gbk;

修改mysql的character_set_results的编码为gbk;

set character_set_results = gbk;

总结

相关推荐