安装R和MySQL在此就不再多说了。网上有非常多教程能够找到。以下直接进入到odbc的安装流程。
1、下载安装mysql-connector-odbc-5.x.x-win32.msi
下载地址:http://dev.mysql.com/downloads/connector/odbc/可下载最新版本号
但在安装过程中遇到以下问题(经測试win10-64位版本号下安装mysql-connector-odbc-5.3.6-winx64.msi不会出现该问题):
Error 1918. Error installingODBC driver MySQL ODBC 5.3 ANSI Driver,ODBC error 13: 无法载入MySQL ODBC 5.3 ANSI Driver ODBC驱动程序的安装例程,由于存在系统错误代码126: 找不到指定的模块。...\myodbc5S.dll)。
. Verify that the file MySQL ODB...
在网上搜寻之后发现例如以下解决的方法。皆没有解决。在此也列出。希望有人能实验成功:
(1)安装以下的Visual C++ 2010
(2)直接下载myodbc5S.dll放置在对应位置
终于,发现mysql-connector-odbc-5.1.5-win32.msi是可用的。
所以下载之后直接成功安装。
2、配置mysql-odbc
点击“控制面板-系统和安全-管理工具-系统DNS-加入”。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
选择“MySQL ODBC 5.1 Driver”。点击“完毕”。
填写链接參数,后点击“test”測试。
若提示Connection successful则表示成功安装。
3、R语言安装载入“RODBC”包
打开R软件,输入例如以下代码:
> install.packages("RODBC")
> library(RODBC)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
4、使用R语言与MySQL建立链接
输入例如以下代码:
> channel=odbcConnect("test",uid="root", pwd="11221122")
当中。“test”是mysql-odbc配置中的“Data Source Name”,uid要设定为mysql-odbc配置中的“User”,pwd要mysql-odbc配置中的“Password”.
5、R语言与MySQL链接操作演示样例
(1)查询数据库下的数据表
输入例如以下代码:
> sqlTables(channel)
(2)查询某个表中的数据并返回给当前数据框
输入例如以下代码:
> people=sqlFetch(channel,"people")
> people
(3)条件查询并返回给当前数据框
输入例如以下代码:
> sqlQuery(channel,"selectname,birthday from people where age < 25 order by id desc")
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
(4)将当前数据框中的数据保存到MySQL数据库中
输入例如以下代码:
> mtcars
> sqlSave(channel, mtcars, rownames ="brand", addPK = TRUE)
当中。rownames是由于第一列没有变量名,所以在此设定为brand。
进入MySQL数据库,并依次输入例如以下代码:
mysql> show databases;
mysql> use myfirstdb
mysql> show tables;
mysql> select * from mtcars;
显示结果例如以下:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
能够看出,数据框中的数据已经保存到MySQL中了。
(5)在R软件将刚才加入到MySQL数据库中的表删除掉
输入例如以下代码:
> sqlDrop(channel,"mtcars")
再次在数据库中查询结果为:
即删除成功。
(6)关闭R软件与MySQL的链接
输入例如以下代码:
> odbcClose(channel)
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />