r连接数据库
RMySQL 包中提供了到 MySQL 数据库的接口;
RODBC 包提供了更为广泛数据库接口的解决方案,支持所有标准 ODBC 接口的数据库。通过这种方式,相同的 R 代码可以方便地应用于不同类型的数据库。
注意:确保驱动有安装 ,安装时出现以下报错

建议安装小版本,5.1版本
安装驱动参考网址:
http://jingyan.baidu.com/article/4b07be3cb1974e48b380f304.html
设置编码为gbk,从数据库导入中文数据才不会出现乱码

library (RODBC)
ch <- odbcConnect("stocksDSN",uid = "myuser",pwd = "mypassword")
stocks <- sqlQuery(ch ,"select * from quotes")
odbcClose(ch) #关闭连接
library(rCharts)
r1 <- rPlot(table_id ~ id | sex ,data = stocks,color = 'sex',type = 'point')
r1$save("C:\\Users\\Administrator.MR9NORVZGI4OQDO\\Desktop\\test.html")


安装的包存放位置:
C:\Users\Administrator.MR9NORVZGI4OQDO\AppData\Local\Temp\RtmpC0ityn\downloaded_packages
R连接关系型 数据库
library(RMySQL) #支持r3.3.3 con1<-dbConnect(RMySQL::MySQL(),dbname='hanshi',username="root",password="root",host="127.0.0.1") #host为C:\Windows\System32\drivers\etc\下hosts文件的主机地址


#设置编码为gbk dbSendQuery(con1,'SET NAMES gbk') #读表 dbReadTable(con1,"students") #关闭连接 dbDisconnect(conn) #查询并将数据导入R,有两种办法 #方法一: res <- dbSendQuery(con1,"select * from students;") mydata <- dbFetch(res,n=-1) #读入数据框,默认只返回500条,设置n=-1,返回所有数据 #方法二: mydata <- dbGetQuery(con1,"select * from students;")
#将数据写入数据库(接口,新建表名,数据框,参数设置) dbWriteTable(con1, "iris",dataframe,overwrite =TRUE)
#查看数据库中数据表单
dbListTables(con1)

#查看数据库中指定表 dbReadTable(con1, "data")


浙公网安备 33010602011771号