第四章:数据操作Ⅰ 第十三节:与MySQL联动

我们可以使用MySQL数据库来保存R的数据,或者可以借助数据框的强大功能协助R进行数据处理

一、MySOL安装和测试

MYSQL安装教程:https://blog.csdn.net/m0_52559040/article/details/121843945

注意:在选择账户界面时,我们除了要设置root用户的密码,同时需要点击add User来添加一个rprogramming用户来当作与R语言链接的数据库账户

当安装并处理完毕后

我们打开mySQLmySQL Workbench,链接到下面的local数据库中

链接完毕后,我们在MySQL command line client中输入以下代码来将数据框权限赋予给rprogramming用户

复制代码
create database rprogramming;
grant all privileges on rprogramming.*to'rprogramming'@'%';

然后我们在mySQL Workbench的界面,选择数据库------>连接到数据库

以rprogramming用户的形式来链接到数据库

之后,我们在MySQL command line client中输入以下命令来测试数据库是否链接正常

sql 复制代码
use rprogramming;

接下来,我们利用命令行来创建测试用的数据集,例如

sql 复制代码
use rprogramming;

CREATE TABLE scoree (

    namee VARCHAR(20),

    scoree INTEGER

);

insert into scoree values('a',1);

insert into scoree values('b',3);

commit;

SELECT

    *

FROM

    scoree;

创建了一个包含namee和scoree的数据框

二、RMySQL安装

这个包是R语言和MySQL链接的桥梁,我们可以通过以下代码来实现它

R 复制代码
install.packages("DBI")

install.packages("RMySQL")

#以前不能直接安装,现在可以了

之后,我们需要在计算机环境变量的用户变量里添加变量名MySQL_HOME ,并且将其值变为MySQL Server的地址,

之后加载包即可

R 复制代码
library(DBI)

library(RMySQL)

library(data.table)

接下来我们使用以下RmySQL包来测试对数据库的链接

R 复制代码
> conn <- dbConnect(MySQL(),dbname = "rprogramming",username = "rprogramming",password = "qwer",host='127.0.0.1')#建立连接

> dbListTables(conn)
[1] "score"  "scoree"

可以发现成功链接上了

之后我们可以使用dbGetQuery()函数来选择想要看的数据

R 复制代码
> dbGetQuery(conn,"select*from scoree")
  namee scoree
1     a      1
2     b      3

注:常见的RmySQL函数操作

相关推荐
IvorySQL4 小时前
PG 日报|新增 VACUUM 全维度统计信息补丁迭代
数据库·人工智能·postgresql·ivorysql
meilindehuzi_a4 小时前
从零理解并实现 RAG:用 LangChain.js 构建语义检索问答系统
开发语言·javascript·langchain
风流 少年4 小时前
Julia
开发语言·julia
江畔柳前堤5 小时前
GO01-Go 语言与主流编程语言深度对比
开发语言·人工智能·后端·微服务·云原生·golang·go
:-)5 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
白露与泡影6 小时前
Redis 缓存实战:雪崩、穿透、击穿一次讲透
数据库·redis·缓存
GIS阵地6 小时前
QgsRasterDataProvider 完整详解(QGIS 3.40.13 C++)
开发语言·c++·qt·开源软件·qgis
yaoxin5211237 小时前
462. Java 反射 - 获取声明类与封闭类
java·开发语言·python
阿里嘎多学长7 小时前
2026-07-14 GitHub 热点项目精选
开发语言·程序员·github·代码托管
赵渝强老师7 小时前
【赵渝强老师】使用Oracle可传输的表空间迁移数据
数据库·oracle