今天,在使用MySQL命令行客户端查询时,发现查询的结果中文乱码,用其余第三方客户端工具进行查询,中文数据不是乱码,非常奇怪。搜狗一番,找到了乱码缘由:中文操做系统中,其命令行程序的默认语言为简体中文,编码默认为GBK,但数据库的编码为UTF-8(也可能其余),这样致使GBK编码解析UTF-8编码数据产生中文会乱码。 数据库
解决方法:执行命令set character_set_results=gbk;设置当前命令行提示符查询结果编码为GBK编码便可。 工具
PS:该命令只对当前命令行窗口有效,若是退出,从新打开命令行,须要从新执行该命令,不然查询结果中文仍乱码。若有更好方法,还请各位指教! 编码