mysql 4,mysql 4.1,mysql 数据库中文问题

王朝mysql·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

mysql 4的数据库,如果要迁移到MYSQL 4.1去,是会有中文编码问题的,有关的文章介绍太

多了,GOOGLE一下就很多,关键是mysql 4.1开始支持多编码了。今天尝试一下迁移和插入读取等问题,发现一些规律和问题,总结如下

我机器是win2000 server,装了mysql 4,mysql 4.1 和mysql 5,用的是phpmyadmin 2.70 pl2.

首先,我用phpmyadmin 将mysql 4的一个表导出另存为abc.sql文件了。

之后,我先恢复到mysql 5中去,同样用phpmyadmin,输入http://localhost/phpmyadmin5/index.php(我在机器上

配置了三个phpmyadmin,都是同一版本,只不过分别连接mysql 4,mysql 4.1,mysql 5而已),注意在导入

功能时,选择编码为GB2312(这步很重要!),之后成功导入数据表里,

观察一下,注意此时该数据表的每一列的“整理”一项都是gb2312_chinese_ci, 而phpmyadmin设置的首页

里,mysql字符集合是uft-8,连接校对也是uft-8,同时,在my.ini中,设置

[mysqld]

character_set_server = utf8

[mysql]

default-character-set =utf8

这时,可以看到数据库用phpmyadmin看,不存在中文乱码问题了。

接下来,我们在PHP程序中,就可以正常象以前写CRUD程序那样,对数据库进行读取,增加等操作,是没有中文编码问题的哦

再接下来,我们用同样的方法,将数据表恢复到MYSQL 4.1数据库中去,注意,也是在导入时

选编码为GB2312,但发现PHPMYADMIN有一个出错,但不用理会,发现表还是导进去了

同样也是没中文问题,但注意,在用PHP程序处理时,必须象这样处理,否则有乱码问题

<?

header("content-type:text/html; charset=uft-8");

mysql_query("SET NAMES utf8;");

接下来是正常的MYSQL语句操作了

.....

?>

出处:jackyrong BLOG

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有  導航