mysql数据库中文乱码问题解决方法

首先介绍下我遇到的情况:
从JSP页面传到Action中的中文没有问题,保存的时候也是中文,保存结果在页面展现也是中文,但数据库里是乱码。导致该问题的原因是,数据库的编码有问题,修改数据库默认编码即可。
有两种方式可以修改:
第一种方式:
通过MySQL Server Instance Config Wizard修改。
在选择字符集页面,选择第三项,手动设置默认字符集,如图:

[img]http://dl.iteye.com/upload/attachment/275436/226a1569-00f7-347a-a436-87e0d897790d.jpg[/img]

第二种方式:
通过命令行修改。
首先使用命令查看mysql字符集,命令如下:
[quote]show variables like '%char%';[/quote]
[quote]
mysql> show variables like '%char%';
+--------------------------+----------------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------------+
| character_set_client | gbk |
| character_set_connection | gbk |
| character_set_database | gbk |
| character_set_filesystem | binary |
| character_set_results | gbk |
| character_set_server | gbk |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/mysql/charsets/ |
+--------------------------+----------------------------------------+
[/quote]

在查询结果中可以看到mysql 数据库系统中客户端、数据库连接、数据库、文件系统、查询
结果、服务器、系统的字符集设置.
在这里,文件系统字符集是固定的,系统、服务器的字符集在安装时确定,与乱码问题无关
乱码的问题与客户端、数据库连接、数据库、查询结果的字符集设置有关
*注:客户端是看访问mysql 数据库的方式,通过命令行访问,命令行窗口就是客户端,通
过JDBC 等连接访问,程序就是客户端.
我们在向mysql 写入中文数据时,在客户端、数据库连接、写入数据库时分别要进行编码转
换.
在执行查询时,在返回结果、数据库连接、客户端分别进行编码转换。

我这里是已经修改过的,如果哪个编码不正确,可以通过如下命令修改,然后就不会乱码了。
[quote]
set character_set_database = gbk;
[/quote]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值