=== 稍后再整理
mysql 4.0到mysql 5.0的数据导入出现乱码的解决方案
字体大小:大 | 中 | 小 2007-02-08 17:09 - 阅读:485 - 评论 :0
最近做mysql 4.0到mysql 5.0的数据转化工作,发现乱码 无数,观博客无数心得如下:
*mysql 中文亂碼的原因
mysql 會出現中文亂碼的原因不外乎下列幾點:
-mysql server本身設定問題,例如還停留在 latin1
-mysql table 的語系設定問題(包含 character 與 collation)
-客戶端程式(例如 php) 的連線語系設定問題
这是由于 mysql 5.0默认是lantin瑞典语系,因此在mysql 4.0导出的sql文件里面需要加入DEFAULT CHARSET =utf8 collate utf8_unicode_ci
例如:
CREATE TABLE IF NOT EXISTS `user_right` (
`user_right_id` int(11) NOT NULL auto_increment,
`user_id` varchar(11) default NULL,
`right_id` varchar(11) default NULL,
PRIMARY KEY (`user_right_id`)
) TYPE=MyISAM DEFAULT CHARSET =utf8 collate utf8_unicode_ci AUTO_INCREMENT=11 ;
然后在php连接数据库最初执行"SET NAMES 'utf8'";
问题解决!以上针对utf8编码的数据库,毕竟是趋势嘛,其它编码有待稍空的时候研究