问答一下,轻松解决,电脑应用解决专家!
主板显卡CPU内存显示器
硬盘维修显卡维修显示器维修
注册表系统命令DOS命令Win8
存储光存储鼠标键盘
内存维修打印机维修
WinXPWin7Win10/Win11
硬件综合机箱电源散热器手机数码
主板维修CPU维修键盘鼠标维修
Word教程Excel教程PowerPointWPS
网络工具系统工具图像工具
数据库javascriptLinux系统
PHP教程CSS教程XML教程

Mysql Command Line Client查询结果乱码解决案例二

更新时间:2021-04-12 17:03 作者:木风卜雨点击:
乱码问题: 
 
数据库是MySql,存储的是中文的内容用MySql Command Line Client 查看是乱码,但是用MySql Administrator查看却显示正确
 
先看数据库的相关编码
 
 
mysql> show variables like 'character_set_%';
+--------------------------+---------------------------------------------------------+
| Variable_name            | Value                                                   |
+--------------------------+---------------------------------------------------------+
| character_set_client     | utf8                                                    |
| character_set_connection | utf8                                                    |
| character_set_database   | utf8                                                    |
| character_set_filesystem | binary                                                  |
| character_set_results    | utf8                                                    |
| character_set_server     | utf8                                                    |
| character_set_system     | utf8                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\ |
+--------------------------+---------------------------------------------------------+
查看数据库表数据出现乱码,首先 MySql Administrator查看却显示正确的,只是用MySql Command Line Client查看显示乱
 
mysql> select * from student;
+----+------+------+
| id | name | age  |
+----+------+------+
|  1 | 涓?  |    4 |
+----+------+------+
1 row in set (0.00 sec)
 
问题分析,这个原因主要是受客户端的连接相关编码影响,下面三项
character_set_client
character_set_connection
character_set_results 
 
而这三项是可以通过set names utf8|set names gbk来可以设置的!另外也说明当前连接的客户端的编码情况没有影响到数据库服务器本身的编码情况。
 
 
mysql> set names gbk;
Query OK, 0 rows affected (0.00 sec)
 
mysql> show variables like 'character_set_%';
+--------------------------+---------------------------------------------------------+
| Variable_name            | Value                                                   |
+--------------------------+---------------------------------------------------------+
| character_set_client     | gbk                                                     |
| character_set_connection | gbk                                                     |
| character_set_database   | utf8                                                    |
| character_set_filesystem | binary                                                  |
| character_set_results    | gbk                                                     |
| character_set_server     | utf8                                                    |
| character_set_system     | utf8                                                    |
| character_sets_dir       | C:\Program Files\MySQL\MySQL Server 5.5\share\charsets\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec)
 
mysql> select * from student;
+----+------+------+
| id | name | age  |
+----+------+------+
|  1 | 上     |    4 |
+----+------+------+

更多相关参考文献《Mysql Command Line Client查询结果乱码解决一例
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
你可能感兴趣的内容