在R的使用中,為了方便提取數據,
我們經常要進行數據庫進行操作,接下來我們嘗試使用R進行連接數據。
這里我們使用R中的RODBC進行操作,
首先,我們需要先配置ODBC資源管理器
通過任務管理器或者win+R運行odbcad32.exe,進入odbc數據源管理器
點擊添加,選擇native client 10.0
設置連接名稱和數據庫地址
設置登入賬號和密碼
接下來,按照步驟依次進行就可以了。
設置完后,我們會在用戶DSN界面看到我們剛才設置的連接
到這里第一步算是完成
接下來,我們需要進入R安裝RODBC包並載入
install.packages("RODBC")
library(RODBC)
connect=odbcConnect('rconnect',uid='xxx',pwd='xxx') #連接前面創建的數據庫,本機的話uid和pwd可以忽略
data(USArrests) #把R自帶的數據USArrests 寫入數據庫中
sqlSave(connect,USArrests,rownames = "state",addPK = TRUE) #把行名稱改為state,並保存,此時進入數據庫可看到表格
以上這個過程我們可以包R中的數據保存到數據中。
我們也可以從數據庫中,選取表格進行查詢
sqlTables(connect) #查看數據庫中的表
sqlFetch(connect,"USArrests",rownames = "state") #輸出USArrests表中的內容
sqlQuery(connect,"select * from USArrests") #使用sql進行查詢
到這里,基本上R和SQL server的連接操作就差不多了。
最后,看下如何刪除表格以及關閉連接
sqlDrop(channel,"USArrests") #刪除表格
odbcClose(channel) #關閉連接
到此為止,基本上完成了R的連接數據庫操作。
python連接數據庫操作比R稍微簡單些
通過添加pymssql模塊進行數據連接操作
安裝pymssql模塊
進入cmd命令窗口,使用pip可以直接進行模塊安裝
輸入安裝命令 pip install pymssql
安裝完成后就可以進入python界面進行操作了
import pymssql
connect=pymssql.connect(host='數據庫登入名稱',user='sa',password='pwd',database='要訪問的數據庫') #跟上面R類似進行python和數據庫的連接。
如果和本機數據庫交互,只需修改鏈接字符串
conn=pymssql.connect(host='.',database='Michael')
接下來進行查詢操作
cur=conn.cursor() #創建連接游標
cur.execute('select * from xx') #執行查詢操作
print (cur.fetchall()) #讀取游標內容,並打印
cur.close() #查詢之后關閉游標
到這里基本操作就已經完成了。
conn.close() #關閉連接