mysql乱码问题与解决办法汇总(1)

1 篇文章 0 订阅

mysql4数据导入mysql5乱码问题解决办法

mysql数据库乱码问题在4.0之前的版本中是不存在的,都默认为latin1。

自从有了mysql5,mysql的乱码问题就成了mysql最让人头疼的问题之一。

数据库导入导出乱码往往是因为编码格式不对应造成的,常见会在以下编码格式之间出现问题:gbk、gb2312、ut8、latin1、big5。

由于一般的虚拟主机代理商提供的数据库管理工具都是phpmyadmin,所以大家还是需要掌握它的操作技巧,以免事倍功半。

从mysql4.0的数据库到mysql5的数据库迁移,使用了这样的办法:

首先,phpmyadmin链接校对编码格式必须要和源数据库的编码格式一致。源数据库导出的时候,选中所有表(切忌不能选中整个数据库)来备份。

然后使用文本编辑器查看导出的sql文件,如果其中没有乱码,说明我们已经顺利通过第一步,数据库导出正常了。

接着我们再新建一个和当前数据库编码格式相同的数据库,使用phpmyadmin导入程序或者sql语句形式,进行恢复。

 

PHP插入中文数据到MYSQL5出现乱码问题

MYSQL在引入多语言的同时,也造成插入中文会出现乱码,而且无法用编码解决

比如说: html页面采用gb2312编码,表采用utf8编码,那么是应该set names utf8,还是gb2312呢
这个问题我测试过
要发送set names gb2312,而不是utf8

   1、建立数据表的时候将编码类型设置为gb2312_chinese_ci

   2、在连接数据库的页面中加入一行mysql_query("SET NAMES 'gb2312'",$link);或 mysql_query("SET NAMES 'gb2312'");  例:

      $db_host="localhost";
      $db_user="root";
      $db_password="password";
      $db_name="test";
      $link=mysql_connect($db_host,$db_user,$db_password);
      mysql_query("SET NAMES 'gb2312'",$link);
      $db=mysql_select_db($db_name,$link);

在PHPmyadmin中把该数据库的整理也设置成gb2312,就可以了!(好象不设置也可以)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值