1 乱码产生的原因:
查看 MySQL 内部设置的编码 查看包含 character 开头的全局变量 show variables like 'character%';
解决方案 修改 client、connection、results 的编码为 GBK,保证和 DOS 命令行编码保持一致 set character_set_client=gbk;修改客户端的字符集为 GBK set character_set_connection=gbk;修改连接的字符集为 GBK set character_set_results=gbk;修改查询的结果字符集为 GBK
同时设置三项 set names gbk; 注意:退出 DOS 命令行就失效了,需要每次都配置
mysql> select * from student3;
+------+----------+------+------+---------+------+---------+
| id | name | age | sex | address | math | english |
+------+----------+------+------+---------+------+---------+
| 1 | 马云 | 55 | 男 | 杭州 | 66 | 78 |
| 2 | 马化腾 | 45 | 女 | 深圳 | 98 | 87 |
| 3 | 马景涛 | 55 | 男 | 香港 | 56 | 77 |
| 4 | 柳岩 | 20 | 女 | 湖南 | 76 | 65 |
| 5 | 柳青 | 20 | 男 | 湖南 | 86 | NULL |
| 6 | 刘德华 | 57 | 男 | 香港 | 99 | 99 |
| 7 | 马德 | 22 | 女 | 香港 | 99 | 99 |
| 8 | 德玛西亚 | 18 | 男 | 南京 | 56 | 65 |
+------+----------+------+------+---------+------+---------+