目录


1 RMySQL

R作为一款数据分析的工具,,而MySQL是一款常用的开源关系型数据库软件,非常适用于中小型的数据存储,当二者相互结合时才能爆发出巨大的能量。

RMySQL程序包就为R提供了访问MySQL数据库的接口程序,其不仅支持基本的数据库访问与查询,还封装了高效的数据操作方法,掌握好这些功能将使得数据的分析和处理更加得心应手。

2 环境与安装

## 2.1 运行环境
操作系统:[Win10](http://www.itellyou.cn/)

R版本:R-3.2.4-win

MySQL版本:MySQL Community 5.7

RStudio版本:RStudio-0.99.896

2.2 安装RMySQL

使用第三方软件包的安装方法,在RStudio中输入如下代码:

install.packages('RMySQL')

3 建立通信

## 3.1 建立本地连接

RMySQL中使用dbConnect函数指定与本地数据库建立连接时,需要指定数据库管理系统的类别,用户名(username),密码(password)以及需要操作的数据库名称(dbname)。

library(DBI)
library(RMySQL)
con <- dbConnect(MySQL(),username='analysis',password='1',dbname='ppd')

除了上节提到的参数以外,完整的数据库连接设置还应该指定服务器地址(host)与访问端口号(port),所以建立本地数据库连接完整的如下:

con <- dbConnect(MySQL(),host='10.2.2.15',username='db_mysql',password='db_mysql',port=3306,dbname='bc-oss')

3.2 建立远程连接

建立R与远程MySQL数据库通信时,只需要指定数据库相应的服务器地址和端口号。

con <- dbConnect(MySQL(),host='127.0.0.1',username='analysis',password='1',port=3306,dbname='ppd')

3.3 MySQL连接信息

summary(con)

3.4 关闭连接

dbDisconnect(con)

4 基本操作

4.1 数据读写

# dbWriteTable(连接名,新建的表名,data.frame数据)
dbWriteTable(con,'iris',iris[1:100,]) # 新建表并插入数据
dbReadTable(con,'iris') # 获得整个表数据
dbWriteTable(con,'iris',iris[101:150,],append = T) # 新增数据
dbWriteTable(con,'iris',iris[1:20,],overwrite = T) # 覆盖原表数据
dbWriteTable(con,'iris',iris[1:15,],row.names = F,overwrite = T) # 不插入row.names字段
dbListTables(con) # 查看数据库的表
dbListFields(con,'iris') # 查看某表的字段
dbSendQuery(con,'insert into iris values (5.8,4.0,1.2,0.2,"setosa")') # 插入记录
if(dbExistsTable(con,'iris')){
dbRemoveTable(con,'iris') # 删除表
}

4.2 SQL操作

querryData <- dbGetQuery(con,'select * from iris where `Sepal.Length` > 0') # 查询数据
class(querryData)
summary(querryData)

分页

querrySql <- dbSendQuery(con,'select * from iris where `Sepal.Length` > 0') # 执行SQL脚本查询,并分页
querryData <- fetch(querrySql,n = 1) # 截取的记录数
querryData <- fetch(querrySql,n = -1) # 截取的记录数
summary(querryData)

如果数据库中存在中文字符

dbSendQuery(con,'SET NAMES gbk')
dbListFields(con,'city')

5 案例实践


联系作者:YukBrandes@Gmail.com

R的数据库访问-MySQL的更多相关文章

  1. .net(C#数据库访问) Mysql,Sql server,Sqlite,Access四种数据库的连接方式

    便签记录Mysql,Sql server,Sqlite,Access四种数据库的简单连接方式 //using MySql.Data.MySqlClient; #region 执行简单SQL语句,使用M ...

  2. C#连接、访问MySQL数据库

    一.准备工具 visual stuido(本示例使用visual studio 2010) MySql.Data.dll mysql_installer_community_V5.6.21.1_set ...

  3. 关于利用PHP访问MySql数据库的逻辑操作以及增删改查实例操作

    PHP访问MySql数据库 <?php //造连接对象$db = new MySQLi("localhost","root","",& ...

  4. 基于gin的golang web开发:访问mysql数据库

    web开发基本都离不开访问数据库,在Gin中使用mysql数据库需要依赖mysql的驱动.直接使用驱动提供的API就要写很多样板代码.你可以找到很多扩展包这里介绍的是jmoiron/sqlx.另外还有 ...

  5. 我的基于asp.net mvc5 +mysql+dapper+easyui 的Web开发框架(1)数据库访问(0)

    一.数据库访问 概述 1. 数据库使用mysql,orm采用dapper框架.dapper框架应用简单,只是需要自己手写sql语句,但是对于像我这样写了多年sql语句的人来说,这应该不算问题,个人还是 ...

  6. java文件来演示如何访问MySQL数据库

    java文件来演示如何访问MySQL数据库. 注:在命令行或用一个SQL的前端软件创建Database. 先创建数据库: CREATE DATABASE SCUTCS; 接着,创建表: CREATE ...

  7. LoadRunner访问Mysql数据库

    这是很久以前编写的一个测试案例,那时是为了检查大量往Mysql数据库里插入数据,看一下数据库的性能如何?服务器是否会很快就被写满了. 前期的准备工作:Mysql 数据库搭建,LoadRunner,li ...

  8. PHP访问MySql数据库介绍

    在网站后台,经常要与数据库打交道.本文介绍如何使用XAMPP来管理MySql数据库及如何用PHP来访问MySql数据库. 一.使用XAMPP来管理MySql数据库 首先使用XAMPP打开MySql的管 ...

  9. 本地tomcat访问mysql数据库

    虽然以前经常听人说起过tomcat,但是今天头一次使用tomcat. 1.Tomcat的安装过程: 首先应该从Apache官方网站上下载是用于Windows的.zip压缩包. 下面是相应的下载链接: ...

随机推荐

  1. 「NOIP2018 保卫王国」

    题目 强制选点我们可以把那个点权搞成\(-inf\),强制不选我们搞成\(inf\),之后就真的成为动态\(dp\)的板子题了 由于不想像板子那样再写一个最大独立集的方程,之后利用最小点覆盖=总点权- ...

  2. 关于python接口基础到进阶随笔

    想了很久,闲来无事,今天想了下还是总结了下写下来,部分参考官方源码理解,还有就是这么久的理解, 如果觉得有帮助请记得点赞 先讲下接口url组成拿后台服务为例 通常一个后台请求url格式: http:/ ...

  3. ListView 中的TextView实现跑马灯效果

    案例:怎么样在一个ListView中含有TextView的item中实现字母滚动呢.这个在一些特定的场合经常用得到.如下图,当焦点位于某个item的时候其内容就自动滚动显示 要实现这样的效果,废话不多 ...

  4. 用 S5PV210 学习 Linux (三) SD卡下载

    学习地址:http://edu.51cto.com/lesson/id-63015.html http://blog.csdn.net/karven_/article/details/52015325 ...

  5. 使用java代码将时间戳和时间互相转换

    时间戳转时间: SimpleDateFormat simpleDateFormat = null; simpleDateFormat = new SimpleDateFormat("yyyy ...

  6. Linux系统调用原理

    操作系统通过系统调用为运行于其上的进程提供服务. 当用户态进程发起一个系统调用, CPU 将切换到 内核态 并开始执行一个 内核函数 . 内核函数负责响应应用程序的要求,例如操作文件.进行网络通讯或者 ...

  7. Notes 20180311 : String第三讲_深入了解String

    很多前辈我可能对于我的这节文章很困惑,觉得String这个东西还有什么需要特别了解的吗?其实不然,String是一个使用十分频繁的工具类,不可避免地我们也会遇到一些陷阱,深入了解String对于我们避 ...

  8. iOS dyld: Library not loaded 报错解决

    Xcode 用的是10.1 版本打的苹果包在 ios系统10.0 以上可以正常运行 但是系统9.3的手机安装后直接运行就崩溃 后来插上电脑联调 报错 dyld: Library not loaded: ...

  9. Source folder is not on the Java build class path

    源文件夹不在Java构建类路径上 只需右键单击文件夹src - > build path - >Using source folders就是这样

  10. iOS:位置相关(18-03-09更)

    1.定位设置 2.定位页面逻辑 1.定位设置 2.定位页面逻辑 1).第一次进入该VC,在 viewDidLoad 调用刷新页面 refreshLocationView .这时用户还没决定,会刷出“正 ...