码迷,mamicode.com
首页 > 数据库 > 详细

R连接mysql数据库方法详解

时间:2016-03-19 19:20:34      阅读:635      评论:0      收藏:0      [点我收藏+]

标签:

Warning messages:
1: In odbcDriverConnect("DSN=Rdata;UID=root") :
  [RODBC] ERROR: state IM002, code 0, message [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
当R语言从数据库取出数据时,出现以上错误,这是由于未配置ODBC数据源引起的错误,以下将介绍该问题的解决方案,同时介绍R连接mysql数据库的方法
一、配置ODBC数据源
1.下载mysql ODBC【http://dev.mysql.com/downloads/connector/odbc/】,如果觉得注册麻烦可点击我的网盘链接【链接:http://pan.baidu.com/s/1c0PWyHE 密码:g8ha 注意:该软件包适用于Windows 64位
2.安装好了mysql ODBC之后添加,首先打开控制面板-管理工具-ODBC 数据源(对应自己系统打开相应数据源)
技术分享
3.ODBC 数据源添加
技术分享

技术分享

4.设置ODBC数据源参数
技术分享

以上完成了数据源的配置,接下来打开R软件利用RODBC包连接mysql数据库

二、下载并加载RODBC包
> install.packages( "RODBC" );#下载RODBC包
> library( "RODBC");#加载RODBC包

三、使用
1.建立并打开链接【odbcConnect( "数据源名称",uid="用户名",pwd="密码" )】,返回mysql连接标识,数据源名称为上面自己设置的
> con = odbcConnect( "Rdata",uid="root",pwd="" );#数据源:Rdata(设置时的名称),用户名:root,密码为空

2.从数据库读取数据表,返回一个数据框【 sqlFetch( mysql连接标识,表名 ) 】
> result1 = sqlFetch( conn,‘test‘ );
> result1           #显示结果
      name score
1 zhangsan    90
2   wangwu    98

3.向数据库提交查询【 sqlQuery( mysql连接标识,"sql命令" ) 】
> result2 = sqlQuery( conn,‘select * from test where score>90‘ );
> result2
    name score
1 wangwu    98

4.关闭连接【 close( mysql连接标识 ) 】
> close( conn );

 常见错误:

> conn = odbcConnect( "Rdata",uid="root",pwd="" )
Warning messages:
1: In odbcDriverConnect("DSN=Rdata;UID=root") : [RODBC] ERROR: state HY000, code 2003, message [MySQL][ODBC 5.3(a) Driver]Can‘t connect to MySQL server on ‘127.0.0.1‘ (10061)
2: In odbcDriverConnect("DSN=Rdata;UID=root") : ODBC connection failed
  
这可能是由于没有打开mysql,只有打开后才能连接

补充:mysql ODBC ANSI driver 和Unicode区别:Unicode driver版本提供了更多字符集的支持,也就是提供了多语言的支持;而ANSI driver版本是只针对有限的字符集的范围。

R连接mysql数据库方法详解

标签:

原文地址:http://www.cnblogs.com/steamed-bread/p/5295253.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!