控制台(cmd.exe)连接数据库乱码
用Navicat for MySQL查出一条记录
数据库编码正常,从控制台查出来乱码
出现了这样的问题,去找解决方案,百度叫你这样
在或者这样
不知道你的问题用上面的方法能不能解决,反正我是没解决!!!
无fuck说
正确的解决办法:
查看一下你的数据库编码:show variables like 'character%';
全TM是utf-8呢!为什么还会乱码呢?别着急,先让我解释一下各个参数的意义
– character_set_server:默认的内部操作字符集
– character_set_client:客户端来源数据使用的字符集
– character_set_connection:连接层字符集
– character_set_results:查询结果字符集
– character_set_database:当前选中数据库的默认字符集
– character_set_system:系统元数据(字段名等)字符集
看到character_set_results;
了吗,查询结果字符集!数据库保存的编码是utf-8,我们的电脑系统默认是GBK编码,改变不了,那就只有改变查询结果的字符集了
方案:
set character_set_results='gb2312';
或者你设置成GBK也行set character_set_results='gbk';
数据库编码utf-8,控制台不能插入中文问题
set character_set_client='gbk2312';
或者你设置成GBK也行set character_set_client='gbk';