日期:2014-05-16  浏览次数:20787 次

MySql中文乱码解决方案

====================================

? ? ? ? 中文乱码解决方案

====================================

?

说明: 在MYSQL中,如果使用缺省的字符集,在建库、建表时,默认使用的是latin1字符集,

?

为ISO 8859-1西欧字符集。插入中文字符时,与之不匹配,就会出现乱码。

?

【解决方案】

?

1. 打开文件: C:\Program Files\MySQL\MySQL Server 5.0\my.ini;

?

2. 将其中所有的default-character-set=latin1改为default-character-set=gb2312,

?

? ?然后重启MYSQL(以前建立的数据库需重建);

?

? ?测试: 运行MySQL Command Line Client:

?

? ? ? ? ?输入show variables like 'character_set_%';

?

? ? ? ? ?可以查看数据库的字符编码如下:

?

?

? ?mysql> show variables like 'character_set_%';?

+--------------------------+-----------------------------------------+?

| Variable_name ? ? ? ? ? ? | Value ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

+--------------------------+-----------------------------------------+?

| character_set_client ? ? ?| gb2312 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

| character_set_connection ?| gb2312 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

| character_set_database ? ?| gb2312 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

| character_set_filesystem ?| binary ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

| character_set_results ? ? | gb2312 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

| character_set_server ? ? ?| gb2312 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

| character_set_system ? ? ?| utf8 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

| character_sets_dir ? ? ? ?| ......?

+--------------------------+-----------------------------------------+?

?

3. 将程序中连接数据库的URL改为(此项非必须):

?

? ?"jdbc:mysql://localhost:3306/jiyuanpeng?useUnicode=true&characterEncoding=gb2312"