一、 安裝RODBC庫
創(chuàng)新互聯(lián)主營信陽網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,重慶APP開發(fā),信陽h5重慶小程序開發(fā)公司搭建,信陽網(wǎng)站營銷推廣歡迎信陽等地區(qū)企業(yè)咨詢
1、進(jìn)入R語言的GUI界面(RGUI.EXE),在菜單欄選擇“程序包/安裝程序包
2、在彈出的窗口里往下拉,選擇RODBC如圖,點(diǎn)擊確定
3、在ODBC數(shù)據(jù)源管理器里將需要的數(shù)據(jù)庫添加進(jìn)去,這里筆者使用的是SQL Server2008,驅(qū)動程序選擇Native Client10.0
3、在R語言窗口輸入連接語句
library(RODBC)
**這里是載入RODBC庫
channel-odbcConnect("MyTest",uid="ripley",case="tolower")
**連接剛才添加進(jìn)數(shù)據(jù)源的“MyTest”數(shù)據(jù)庫
**ch - odbcConnect("some dsn ", uid = "user ", pwd = "**** ")
**表示用戶名為user,密碼是****,如果沒有設(shè)置,可以直接忽略
data(USArrests)
**將“USArrests”表寫進(jìn)數(shù)據(jù)庫里(這個表是R自帶的)
sqlSave(channel,USArrests,rownames = "state",addPK = TRUE)
**將數(shù)據(jù)流保存,這時候打開SQL Server就可以看到新建的USArrests表了
rm(USArrests)
sqlTables(channel)
**給出數(shù)據(jù)庫中的表
sqlFetch(channel,"USArrests",rownames = "state")
**輸出USArrests表中的內(nèi)容
sqlQuery(channel,"select * from USArrests")
**調(diào)用SELECT查詢語句并返回結(jié)果(如圖)
sqlDrop(channel,"USArrests")
**刪除表
odbcClose(channel)
**最后要記得關(guān)閉連接
當(dāng)然,通過這個辦法也可以讀取Excel、Access表中的內(nèi)容,具體方法類似,這里不再重復(fù)
首先在開始菜單打開控制面板。點(diǎn)擊開始,選擇右側(cè)的控制面板。
在控制面板中,以所有控制面板的格式查看,選擇管理工具,并打開。
在管理工具中,可以看到有個數(shù)據(jù)源(ODBC),打開數(shù)據(jù)源。
在數(shù)據(jù)源管理面板中,選擇添加,由于我這里已經(jīng)添加了一個數(shù)據(jù)源,只是介紹一下操作。
根據(jù)自己的數(shù)據(jù)庫,選擇相應(yīng)的驅(qū)動,比如我這里是MYSQL ODBC 5.3。點(diǎn)擊完成,進(jìn)行下一步的配置。
這里根據(jù)提示,填寫相應(yīng)的字段即可。最后點(diǎn)擊OK,由于這里沒有填寫任何字段,所以O(shè)K按鈕是灰色的。
打開R軟件,數(shù)據(jù)源設(shè)置好了之后,還要加載RODBC包。如果沒有安裝,參考經(jīng)驗(yàn)“R語言關(guān)于R包的管理:安裝加載查看,移除,卸載”?;剀囍鬀]有錯誤提示便是成功了。
序管理器] 在指定的 DSN 中,驅(qū)動程序和應(yīng)用程序之間的體系結(jié)構(gòu)不匹配
是驅(qū)動版本不對,你檢查一下。
、使用R數(shù)據(jù)庫接口
連接MySQL,使用RMySQL包,使用前RMySQL包要先安裝。
library(RMySQL)
連接方式有2種:
(1)使用dbConnect
conn - dbConnect(MySQL(), dbname = "rmysql", username="rmysql", password="rmysql", host="127.0.0.1", port=3306)
數(shù)據(jù)操作方法:
dbWriteTable(conn, "tablename", data) #寫表
您好,我來為您解答:
你的什么軟件? 先在你的機(jī)器上安裝MYSQL的ODBC,
然后在WINDOWS控制面板的ODBC管理中創(chuàng)建,測試一下。
參考一下說明OR HELP,估計與SYBASE、ORACLE的內(nèi)容類似
mysql連接字串:
Driver={MySQL ODBC 5.1 Driver};Server=localhost;Port=3306;Database=tmp;USER=root;Pwd=123;
如果我的回答沒能幫助您,請繼續(xù)追問。