楼主: maozhiqiang
4323 6

[程序分享] R语言连接Mysql数据库的步骤及简单使用mysql数据库中的数据 [推广有奖]

  • 0关注
  • 5粉丝

本科生

41%

还不是VIP/贵宾

-

威望
0
论坛币
4947 个
通用积分
3.8604
学术水平
8 点
热心指数
9 点
信用等级
7 点
经验
5657 点
帖子
51
精华
0
在线时间
76 小时
注册时间
2010-5-19
最后登录
2021-12-28

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
以下的实验环境是在windows7-32操作系统下进行
1、下载(mysql-connector-odbc-5.3.2-win32.msi)
     下载地址:http://dev.mysql.com/downloads/connector/odbc
      如果下载不了的同学可以下直使用我的附件
    mysql-connector-odbc-5.3.2-win32.rar (6.64 MB)
2、安装Mysql的RODBC:mysql-connector-odbc-5.3.2-win32.msi
3、配置datasource



以上Datasource配置成功

4、R软件访问mysql数据库

(1)安装及加载RODBC

  • install.packages("RODBC")
  • library(RODBC)

[color=rgb(51, 102, 153) !important]复制代码

(2)与mysql建立连接
  • channel=odbcConnect("mysqlodbc", uid="root", pwd="123456")

[color=rgb(51, 102, 153) !important]复制代码

(3)查询该数据库下都有哪些数据库表
  • > sqlTables(channel)
  •   TABLE_CAT TABLE_SCHEM   TABLE_NAME TABLE_TYPE REMARKS
  • 1      test                       aa      TABLE
  • 2      test              first_table      TABLE
  • 3      test             second_table      TABLE
  • 4      test                 students      TABLE

[color=rgb(51, 102, 153) !important]复制代码

(4)查询某个表中的数据返回给数据框
  • > students=sqlFetch(channel,"students")
  • > students
  •     id     name age address        tel score
  • 1  101 潘国远01  90    北京 2147483647  99.9
  • 2  102 潘国远02  90    北京 2147483647  99.9
  • 3  103 潘国远03  90    北京 2147483647  99.9
  • 4  104 潘国远04  90    北京 2147483647  99.9
  • 5  105 潘国远05  90    北京 2147483647  99.9
  • 6  106 潘国远06  90    北京 2147483647  99.9
  • 7  107 潘国远07  90    北京 2147483647  99.9
  • 8  108 潘国远08  90    北京 2147483647  99.9
  • 9  109 潘国远09  90    北京 2147483647  99.9
  • 10 110 潘国远10  90    北京 2147483647  99.9

[color=rgb(51, 102, 153) !important]复制代码

(5)条件查询
  • > sqlQuery(channel,"select name,age,address,score from students where id < 105 order by id desc")
  •       name age address score
  • 1 潘国远04  90    北京  99.9
  • 2 潘国远03  90    北京  99.9
  • 3 潘国远02  90    北京  99.9
  • 4 潘国远01  90    北京  99.9

[color=rgb(51, 102, 153) !important]复制代码

(6)将数据框中的数据保存到数据库表中

数据框的首列没有列名,所以在保存之前需要指定列名
  • sqlSave(channel, USArrests, rownames = "state", addPK = TRUE)

[color=rgb(51, 102, 153) !important]复制代码



从以上可以看出,数据框能正确的保存到mysql数据库中去了
(7)在R软件将刚才添加到mysql数据库中的表删除掉
  • sqlDrop(channel,"usarrests")

[color=rgb(51, 102, 153) !important]复制代码

(8)关闭连接资源
  • odbcClose(channel)

[color=rgb(51, 102, 153) !important]复制代码



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:SQL数据库 MySQL 数据库 sql R语言 下载地址 library 数据库 操作系统 mysql

已有 2 人评分经验 论坛币 收起 理由
李会超 + 100 + 20 精彩帖子
残阳_等待 + 60 精彩帖子

总评分: 经验 + 160  论坛币 + 20   查看全部评分

沙发
loyerss 发表于 2015-11-24 22:00:05 |只看作者 |坛友微信交流群
沙发坐起liuyi168.com
liuyi888.com
52hufa.com
loyer168.com
loyerss.cn
wsr168.com
wsr168.com/wsbbs
52hufa.com/a/xifashui

使用道具

藤椅
wangluan 发表于 2015-11-24 22:01:55 |只看作者 |坛友微信交流群
不错,

使用道具

板凳
残阳_等待 发表于 2015-11-24 22:05:41 |只看作者 |坛友微信交流群
很不错的

使用道具

报纸
maozhiqiang 发表于 2015-11-29 22:18:26 |只看作者 |坛友微信交流群
不错不错.......

使用道具

地板
yangming98 发表于 2015-12-2 23:44:00 来自手机 |只看作者 |坛友微信交流群
maozhiqiang 发表于 2015-11-24 21:54
以下的实验环境是在windows7-32操作系统下进行
1、下载(mysql-connector-odbc-5.3.2-win32.msi)
     下 ...
不错

使用道具

7
ihuobaby 发表于 2015-12-3 01:25:50 来自手机 |只看作者 |坛友微信交流群
maozhiqiang 发表于 2015-11-24 21:54
以下的实验环境是在windows7-32操作系统下进行
1、下载(mysql-connector-odbc-5.3.2-win32.msi)
     下 ...
不错

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 07:23