>  기사  >  데이터 베이스  >  解决MySQL乱码,并不难

解决MySQL乱码,并不难

WBOY
WBOY원래의
2016-06-07 16:14:22865검색

我们曾在前一些文章对MySQL乱码的实际解决方案有一些相关的介绍,我们今天主要向大家描述的是MySQL乱码处理的经验总结,以及实际的解决办法,以下就是对其具体内容的分析,望你会有所收获。 MySQL乱码处理总结: (1)java中处理中文字符正常,在cmd client中显

我们曾在前一些文章对MySQL乱码的实际解决方案有一些相关的介绍,我们今天主要向大家描述的是MySQL乱码处理的经验总结,以及实际的解决办法,以下就是对其具体内容的分析,望你会有所收获。

MySQL乱码处理总结:

(1)java中处理中文字符正常,在cmd client中显示乱码是字符集的问题.

(2)字段长度设置够长,但插入中文字符时提示com.MySQL.jdbc.MySQLDataTruncation: Data truncation: Data too long for column错误是字符集的问题.

(3)乱码问题归根到底是字符集的问题,那就从字符集设置方面考虑,不外乎下面几个方面:server,client,database,connection,results.

解决办法

(1)修改 my.ini(MySQL Server Instance Configuration 文件)

<ol class="dp-xml">
<li class="alt"><span><span># CLIENT SECTION  </span></span></li>
<li><span>[client]  </span></li>
<li class="alt">
<span class="attribute">port</span><span>=</span><span class="attribute-value">3306</span><span> </span>
</li>
<li><span>[MySQL]  </span></li>
<li class="alt">
<span class="attribute">default-character-set</span><span>=</span><span class="attribute-value">gbk</span><span> </span>
</li>
<li><span># SERVER SECTION  </span></li>
<li class="alt"><span>[MySQLd]  </span></li>
<li>
<span class="attribute">default-character-set</span><span>=</span><span class="attribute-value">gbk</span><span>   </span>
</li>
</ol>

(2)修改data目录中相应数据库目录下的db.opt配置文件

<ol class="dp-xml">
<li class="alt"><span><span class="attribute">default-character-set</span><span>=</span><span class="attribute-value">gbk</span><span> </span></span></li>
<li>
<span class="attribute">default-collation</span><span>=</span><span class="attribute-value">gbk_chinese_ci</span><span> </span>
</li>
</ol>

(3)数据库连接串中指定字符集

URL=jdbc:MySQL://yourIP/college?user=root&password=yourPassword&useUnicode=true&characterEncoding=gbk

注:在MySQL4.1.0版 要加useUnicode=true&characterEncoding=gbk 如果是5.0版以上的,加不加都是没有关系的!

(4)在创建数据库时指定字符集

<ol class="dp-xml"><li class="alt"><span><span>create database yourDB CHARACTER SET gbk; </span></span></li></ol>

(5)在dos命令上要设置

<ol class="dp-xml"><li class="alt"><span><span>set names gbk </span></span></li></ol>

好了,经过检查上面四个方面的设置,应该 OK 了!不会出现诸如

com.MySQL.jdbc.MySQLDataTruncation: Data truncation: Data too long for column等问题.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.