1、使用R数据库接口
连接MySQL,使用RMySQL包,使用前RMySQL包要先安装。
library(RMySQL)
连接方式有2种:
(1)使用dbConnect
conn <- dbConnect(MySQL(), dbname = "rmysql", username="rmysql", password="rmysql", host="127.0.0.1", port=3306)
数据操作方法:
dbWriteTable(conn, "tablename", data) #写表
dbReadTable(conn, "tablename") #读表
dbDisconnect(conn) #关闭连接
(2)使用sqldf包
首先要安装sqldf包,其次调用:
>library(sqldf)
> sqldf("select * from t_data",dbname="test",drv="MySQL",user="root",password="",host="127.0.0.1",port=3306)
连接后,SQL查询语句后面的参数均可省略,例如:
> sqldf("select * from t_data limit 0,10")
2、使用ODBC连接
在Windows下配置ODBC(开放数据库连接),具体步骤如下:
(1)R下载RODBC包,安装好。
(2)在http://dev.mysql.com/downloads/connector/odbc下载mySQL ODBC,安装好。
(3)Windows:控制面板->管理工具->数据源(ODBC)->双击->添加->选中mysqlODBC driver一项
填写:data source name 一项填入你要使用的名字,自己随便命名,例如:mysql_data;
description一项随意填写,例如mydata
TCP/IP Server 填写本机服务器IP,一般为:127.0.0.1
user 填写你的mysql用户名
password 填写你的mysql密码
然后数据库里会出现你的mysql里的所有数据库,选择一个数据库。
确定。
(4)打开R的界面调用数据库:
library(RODBC);
channel <- odbcConnect("mysql_data", uid="root", pwd="123");
sqlTables(channel);#查看数据中的表
data<-sqlFetch(channel,"kegg")# 查看表的内容,存到数据框里
参考文章:
1、R语言连接Mysql数据库的步骤及简单使用mysql数据库中的数据(学习笔记).http://www.dataguru.cn/thread-289411-1-1.html
2、R语言连接mySQL数据库步骤. http://blog.sina.com.cn/s/blog_ab3fbf1b0101komj.html
3、R连接MySQL数据库方法备忘. http://www.r-bloggers.com/lang/chinese/1247
以下的实验环境是在windows7-32操作系统下进行
1、下载(mySQL-connector-odbc-5.3.2-win32.msi)
下载地址:http://dev.mysql.com/downloads/connector/odbc
如果下载不了的同学可以下直使用我的附件
mysql-connector-odbc-5.3.2-win32.rar
2、安装Mysql的RODBC:mysql-connector-odbc-5.3.2-win32.msi
3、配置datasource
(3)查询该数据库下都有哪些数据库表
(4)查询某个表中的数据返回给数据框
(5)条件查询
(6)将数据框中的数据保存到数据库表中
数据框的首列没有列名,所以在保存之前需要指定列名
从以上可以看出,数据框能正确的保存到mysql数据库中去了
(7)在R软件将刚才添加到mysql数据库中的表删除掉
(8)关闭连接资源