此文章主要是分析MySQL中文乱码的产生原因以及对MySQL中文乱码的实际解决方案的描述,以下就是文章的主要内容描述。

以下的文章首要介绍的是处理MySQL中文乱码的好用计划大汇总,咱们我们都知道在运用MySQL数据库时,在刺进中文字符的实际操作过程中,有时会呈现一些乱码,例如,中文全被用?替代。

处理MySQL中文乱码的好用计划大汇总(mysql中文乱码怎样用代码解决)  MySQL中文乱码 第1张

呈现这种状况的原因,多是字符集不匹配形成的。

在MySQL中,假如运用缺省的字符集,在建库、建表时,默许运用的是latin1字符集,为ISO 8859-1西欧字符集。

刺进中文字符时,与之不匹配,就会呈现乱码。

自己运用的是MySQL 5.0版,并用C#操作MYSQL数据库,当刺进中文字符时,发现显现的是MySQL中文乱码。

开始估量是字符集没有配对。查找后,发现MSYQL默许运用的是latin1,因而将数据库的装备文件中的字符设置改为utf8,并在C#中将中文字符,转为utf8,刺进后,仍为乱码。

MySQL也支撑gb2312,又将MySQL的字符设置改为gb2312,C#中运用Default,重起MySQL后,操作依然无效。

后想起,尽管将MySQL的字符集设置为gb2312或utf8,但现已树立的数据库和表,仍选用的是默许的字符集,也即仍为最初的西欧字符集,***,只得忍痛将数据库删去,从头以gb2312字符集树立数据库和表。

再用C#刺进中文字符后,全部OK。

再装置好MySQL后,能够手艺或运用装备东西,将my.ini文件中的默许字符集改为gb2312,再从头建库和表时,不必再在句子中指定字符集,其默许设置也即为gb2312,能够正常显现中文字符集。

1.树立数据库是一般的句子:

  1. createdatabasedbname;

2.在库中建表时句子为:

  1. createtabletbname(..........)engine=MyISAMcharactersetgbkcollategbk_chinese_ci;

3.程序中衔接数据库的Connection目标需求写成

  1. Connectioncon=DriverManaager.getConnection("jdbc:mysql://...user=..&password=...&useUnicode=true&characterEncoding=gbk");

4.若在终端下用mysql指令向数据库刺进数据,则在进入mysql时的指令写成:

  1. #mysql--default-character-set=gbk-u...-p

5.在jsp页面的编码设置为utf-8.

我找到一个办法如同能够MySQL中文乱码处理这个问题了

在装置mysql server的时分,无论是挑选gb2312仍是utf-8,都没有联系,这些字符集在phpMyAdmin中都能够很好的作业,首要是自己的脚本要正确的显现中文,能够在php脚本中,衔接数据库之后,正式的数据查询提交之前履行下面的句子:

$SetCharacterSetSql = "SET NAMES '自己运用的字符集'";

  1. $Recordset1=mysql_query($SetCharacterSetSql,$conn_Resource)ordie(mysql_error());

然后再履行自己的查询句子,得到的成果便是正确的了。刚刚试了gb2312和utf-8,都没有问题。以上的相关内容便是对MySQL中文乱码处理计划集锦的介绍,望你能有所收成。

转载请说明出处
知优网 » 处理MySQL中文乱码的好用计划大汇总(mysql中文乱码怎样用代码解决)

发表评论

您需要后才能发表评论