R访问MySql数据库
准备工作:
-
1、安装RODBC包。
install.packages("RODBC")
-
2、在http://dev.mysql.com/downloads/connector/odbc下载connectors ODBC
-
3、windows:控制面板 ——> 管理工具 ——> 数据源(ODBC)——> 双击 ——> 添加 ——> 选中mysql ODBC driver
设置数据源的名称(一会有用),ip地址,输入正确的User和password,选择要操作的数据库名称,本例是bd_blog
-
4、连接数据库
> library(RODBC)
> myconn <- odbcConnect("Rdata", uid="root", pwd="root")
注: 其中odbcConnect("Rdata", uid="root", pwd="root")
中的参数1"Rdata"
是之前添加数据源时设置的名称,后面俩参数uid
和pwd
是MySql的连接用户名和密码。
-
5、读取数据库中的数据:
- (1)
sqlFetch()
读取该数据库中的某数据表中的全部数据
- (1)
> data1 <- sqlFetch(myconn, "article")
> names(data1)
[1] "id" "title" "content" "creat_time" "is_secret" "author_id" "category_id"
> head(data1)
id title content creat_time is_secret author_id category_id
1 1 杭州之旅 感觉不错哦 2019-08-02 12:21:02 0 1 5
2 2 小学同学10年聚会 见到很多许久未见的朋友,很开心 2019-08-07 13:51:02 0 1 4
3 3 python学习第一天 从今天开始学习python,加油,未来可期 2019-08-12 22:24:23 0 1 6
注: 其中sqlFetch(myconn, "article")
的参数1myconn
是刚才定义的连接字符串,参数2"article"
是要提取数据的表名
,要用双引号。
- (2)
sqlQuery()
select语句查询所需数据
> data2 <- sqlQuery(myconn, "select id, title, creat_time from article")
> head(data2)
id title creat_time
1 1 杭州之旅 2019-08-02 12:21:02
2 2 小学同学10年聚会 2019-08-07 13:51:02
3 3 python学习第一天 2019-08-12 22:24:23
- 6、关闭数据库连接
close(myconn)