Heim  >  Artikel  >  Datenbank  >  解决MySQL乱码,并不难

解决MySQL乱码,并不难

WBOY
WBOYOriginal
2016-06-07 16:14:22865Durchsuche

我们曾在前一些文章对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等问题.


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn