1:查看MySQL数据库编码:show variables like 'char%' ;
2:character_set_client:MySQL使用该编码来解读客户端发送过来的数据,例如该编码为utf8,那么客户端发送的数据不是Utf8,就会乱码。
character_set_results:MySQL会把数据转换成该编码后,再发送给客户端。例如该编码为utf8,那么客户端不用utf8,解读就会乱码。
3:控制台乱码问题:cmd下默认使用gbk, 而 character_set_client 不是gbk;
set character_set_client = gbk;
set character_set_results = gbk;
注意:设置变量只对当前连接有效,当退出窗口后,再次登录MySQL,还需要再次设置变量。
为了一劳永逸,可以在my.ini 中设置:default-character-set = gbk; 即可。