Home >Database >Mysql Tutorial >浅谈mysql的中文乱码问题_MySQL

浅谈mysql的中文乱码问题_MySQL

WBOY
WBOYOriginal
2016-06-01 13:04:42749browse

首先,我用的mysql版本号是5.5.17的,最近遇到的问题是在eclipse中通过jdbc往数据库写中文数据的时候,在数据库中显示的是??即乱码,为解决这个问题,搞了一个晚上(当然熄灯后就就寝了(__) )外加早上这会儿,搞得头都大了,改来改去导致连往数据库直接写中文都会报错(我把错误页贴出来吧)如下:

mysql报的错误

其实现在回头看看,乱码无非是改一下mysql安装文件中的my.ini文件以及data中的db.opt文件,具体修改如下:

将my.ini文件中的文件修改为:

[client] 
port=3306

[mysql]

default-character-set=gbk

[mysqld] 
character-set-server=utf8

现在需要将data中的db.opt修改一下:

default-character-set=utf8
default-collation=utf8_general_ci

好了,现在修改文件完毕,现在需要重写启动mysql服务,进入mysql后输入命令:

show variables like “%colla%”;

然后再输入show varables like “%char%”;
如果以上结果和下图相同那就设置成功了

图一

图二

另外,以后如果再遇到从eclipse中往数据库写中文数据出sql异常时可以先在cmd中输入命令:

show create database db;(db为数据库名)可以查看数据库的编码,如果还是latin1,可使用以下命令修改数据库编码:
alter database db default character set utf8;

这样就可以将数据库的编码改为utf8了。

此时,再通过jdbc连接时,就可以很随意的添加中文到mysql中了。

以上便是我在使用mysql中遇到的乱码问题,希望能给遇到相同问题的同学少走弯路提供一点参考。。。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn