R语言连接Mysql数据库的中文乱码问题

时间:2024-03-31 20:17:00

最近在学习R语言的数据分析,由于数据存在Mysql中,需要用R语言访问Mysql,配置操作参考下文:

http://blog.sina.com.cn/s/blog_ab3fbf1b0101komj.html


配置完成后发现查询出来的中文是乱码,上网查了说是odbcConnect函数应该用DBMSencoding参数指定编码格式。但是我改成utf8和gbk都不行。


我想R语言是通过ODBC连接数据库的,所以应该保证odbcConnect函数和ODBC上设置的编码格式一致。

于是到ODBC配置上将编码改成了utf8,然后再在R中将DBMSencoding参数设置为utf8。
果然,不再凌乱了。 


R语言连接Mysql数据库的中文乱码问题
 
R语言连接Mysql数据库的中文乱码问题
 

channel <- odbcConnect("log", uid="root", pwd="root",DBMSencoding="utf8")
sqlQuery(channel,"select url_class from log_rg_eg_url_audit limit 5")

  url_class
1      网购
2  未知分类
3      视频
4      网购
5      IT类

 

注:odbcConnect中的编码格式只需与ODBC中的一致即可;与数据库的编码格式无关,数据库可以

是gbk也可以是utf8