R语言中,针对MySQL数据库的操作执行其实也有很多中方式。本人觉得,熟练掌握一种便可,下面主要就个人的学习使用情况,总结其中一种情况-----使用RMySQL操作数据库。
1.下载DBI和RMySQL包
install.packages(c("DBI","RMySQL"))
2.载入DBI和RMySQL包
library(DBI)
library(RMySQL)
3.创建连接和设置字符集获取编码格式
# 创建数据库连接 con <- dbConnect(MySQL(),host ="localhost",dbname="cars",user="root",password="123456") # 说明用什么字符集来获取数据库字段 dbGetQuery(con, "SET NAMES gbk")
4.查询操作
# 设置sql语句 sql <- "SELECT * FROM car" # SQL查询 results <- dbGetQuery(con,sql)
5.增删改操作
# 设置sql语句 sql <- "DELETE FROM car WHERE id=1" # 执行SQL dbExecute(con,sql)
6.关闭数据库
# 关闭连接
dbDisconnect(con)
封装RMySQL操作类,MySQLHelper.R
# 使用RMySQL操作数据库 # 载入DBI和RMySQL包 library(DBI) library(RMySQL) # 连接数据库 mysql_con <- function(){ # 创建数据库连接 con <- dbConnect(MySQL(),host ="localhost",dbname="cars",user="root",password="123456") # 说明用什么字符集来获取数据库字段 dbGetQuery(con, "SET NAMES gbk") # 返回连接状态 return(con) # 验证连接 #print(summary(con)) } # 关闭数据库 mysql_close <- function(con){ # 关闭连接 dbDisconnect(con) } # 查询 mysql_find <- function(sql){ # 连接数据库 con <- mysql_con() # SQL查询 results <- dbGetQuery(con,sql) # 关闭数据库 mysql_close(con) # 返回结果集 return(results) } # 增删改 mysql_cud <- function(sql){ # 连接数据库 con <- mysql_con() # 执行SQL dbExecute(con,sql) # 关闭数据库 mysql_close(con) }