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="")
# 说明用什么字符集来获取数据库字段
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="")
# 说明用什么字符集来获取数据库字段
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)
}