二月
mysql4.0到mysql5.0的数据导入出现乱码的解决方案
Posted by 请叫我可爱熊 at 9:32 上午. Placed in 技术杂文 category
最近做mysql4.0到mysql5.0的数据转化工作,发现乱码无数,观博客无数心得如下:
*mysql中文亂碼的原因
mysql 會出現中文亂碼的原因不外乎下列幾點:
-mysql server本身設定問題,例如還停留在 latin1
-mysql table 的語系設定問題(包含 character 與 collation)
-客戶端程式(例如 php) 的連線語系設定問題
这是由于 mysql5.0默认是lantin瑞典语系,因此在mysql4.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编码的数据库,毕竟是趋势嘛,其它编码有待稍空的时候研究