R和python连接SQL sever 数据库操作

在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() #关闭连接
posted @ 2016-10-12 17:25  molearner  阅读(3240)  评论(0编辑  收藏  举报