MySql的中文乱码问题

来源:互联网 发布:javascript注释符号 编辑:程序博客网 时间:2024/05/18 03:54

1,解决中文问题,已在baidu_blog文档中解决了。
但是有时候会出现这种情况,作为服务器的机子上没有将mysql的客户端,直接使用mysql -uusr -p登录后,查询出来的还是乱码,这个怎么解决了,其实很简单:
登录后
一,先查看一下字符编码

mysql> show variables like'character%';
+--------------------------+-----------------------------------------------+
| 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       | D:/ccp/MySQL/MySQL Server 5.0/share/charsets/ |
+--------------------------+-----------------------------------------------+
8 rows in set (0.00 sec)
二,查看表数据
mysql> select * from mark_user;
+----+----------+----------+----------+
| id | username | fullname | password |
+----+----------+----------+----------+
|  1 | yuanyj   | 鐜嬫灄     | 1        |
|  2 | chench   | 闄堢晠     | 1        |
+----+----------+----------+----------+
2 rows in set (0.05 sec)
三,执行设置命令
mysql> set names gbk;
Query OK, 0 rows affected (0.00 sec)

mysql> select * from mark_user;
+----+----------+----------+----------+
| id | username | fullname | password |
+----+----------+----------+----------+
|  1 | yuanyj   | 王林         | 1        |
|  2 | chench   | 陈要        | 1        |
+----+----------+----------+----------+
四,再次查看一下字符编码
mysql> show variables like'character%';
+--------------------------+-----------------------------------------------+
| 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       | D:/ccp/MySQL/MySQL Server 5.0/share/charsets/ |
+--------------------------+-----------------------------------------------+
8 rows in set (0.00 sec)
五,总结
其实还有一个简单的方法:就是在登录的时候,加上参数
 --default-character-set=gbk
例如:  d:/>mysql --default-character-set=gbk -uroot -p
其实,网上这样的例子很多,但都是抄来抄去的,没有实际操作
如果你的数据库的所有字符编码是utf8,哪么连接时就设置为gbk就可以.
上面的set names gbk命令也一样.