登录
首页精彩阅读R语言之RMySQL包
R语言之RMySQL包
2017-02-23
收藏

R语言之RMySQL

一、RMySQL的安装(主要是windows)

这个包最近的跟新版貌似可以直接安装了,之前的版本还需要各种配置。

installed.packages("DBI") #这个包是使用RMySQL的前提

installed.packages("RMySQL")

二、RMySQL常用函数

1、dbConnect() 建立与数据库链接的函数

drv:MySQL()

dbname:链接的数据库的名称

username:连接数据库的用户名

password:连接数据库的密码

host:如果是本地数据库可以略过,否则填写需要链接的地址

port:链接的服务器地址的端口

例子:本地数据库 :conn <-  dbConnect(MySQL(),dbname = "test",username = "test",password = "123")

非本地数据库:conn <-  dbConnect(MySQL(),dbname = "test",username = "test",password = "123",host = "100.0.0.0",port = 3306)

2、dbSentQurey() 修改返回的数据编码类型

有的时候建立链接后,读取的数据是乱码,那么就需要这个函数来修改

conn:就是dbConnect的变量名称

“SET NAMES utf8”or“SET NAMES gbk”或者其他的编码类型

例子:dbSentQurey(conn = conn,“SET NAMES utf8”)

3、dbGetQuery() 返回查询结果

建好链接,改好编码格式,就可以用这个函数获取需要的数据啦

conn:就是dbConnect的变量名称

statement:就是一条SQL语句

例子:dbGetQuery(conn = conn ,"select * from test")

4、dbDisconnect() 关闭链接

RMySQL一般可以建立16个链接,超过后会报错,所以每次用完之后要记得用这个函数关掉,以免跑循环的时候断掉,得不偿失。

例子:dbDisconnect(conn)

5、dbListTables() 返回数据库内所有表的名字

这个没啥说的了,你要是想看都有什么表就输入一个就好了

例子:dbListTables(conn)

6、dbWriteTable() 将R的数据写到mysql数据库的表中

conn:就是dbConnect的变量名称

name:将写入数据的表名称

value:要写入表的数据,一个数据框,或者转化成数据框

row.names:是否写入行编号

overwrite:是否覆盖写入

append:追加写入

例子:dbWriteTable(conn = conn,name = "test",value = "data",row.names = FALSE,append = TRUE)

三、参考的完整代码

library(DBI)

library(RMySQL)

library(data.table)

conn <- dbConnect(MySQL(),dbname = "xplatform",username = "xplatform",password = "xplatform")#建立连接

dbSendQuery(conn,"SET NAMES gbk") #声明编码类型

test_data <- dbGetQuery(conn,"select * from Rtest_data") #读数据

data <- data.table(NO = 1:10,NUm = 2:6) #建立一个数据

dbWriteTable(conn,test_data,data,row.names = F,append) #将数据框data追加写入到test_data中


数据分析咨询请扫描二维码

客服在线
立即咨询