R 连接 SQLServer
许冠明
1、配置 ODBC 数据源
Windows 下的 ODBC 配置。先打开“控制面板”,进入“管理工具”菜单,选择“数 据源(ODBC)”会出现如下窗口:
图中的数据源名称“SQLServer”是我已经添加了的,随便取得名字,一般第一 次是没有这个的。如果驱动程序列没有SQL Server,则需要点击“添加”。
点击“完成”出现如下界面:这里我把名称写成“SQLServer”,即数据源名称(DataSource Name,DSN)。服务器选择 local,或者其他选项。
点击下一步,界面如下:选择“使用用户„„”登录ID 和密码即登录 SQL Server
的用户名和密码。比如 sa 密码:ok
点击下一步,界面如下:更改默认数据库为 TEST,那么 R 语言 conn=odbcConnect('SQLServer',uid='sa',pwd='ok')result=sqlQuery(conn,'select*from student')
连接的数据库就是 TEST,其中 student 表为 TEST 数据库中的表。
点击下一步,完成:
2、R 语言连接数据库,代码如下
Library(RODBC)odbcDataSources()
conn=odbcConnect('SQLServer',uid='sa',pwd='ok')result=sqlQuery(conn,'select*from student') result
odbcClose(conn)
首先载入 RODBC 包,然后使用 odbcDataSources()函数查看可用的数据源。发现 SQL Server
的数据源名称为“SQLServer”,记住这个名称。然后建立数据库的连接,使用的命令行如下:
conn=odbcConnect("SQLServer",uid="sa",pwd="ok",case="tolower")
其中,第一个参数就是刚才 odbcDataSources()函数列出的 SQL server 数据源的名称,uid 为用 户名 pwd 为密码,case 参数表示大小写转换,因为 Windows 默认将字符转换为小写。至此如果不出任何错误的话,就代表连接建立成功,之后就可以进行对数据库的查询或者将处理好的数据框以数据表的形式存入数据库操作。本例中仅给出查询的样例,其他操作请参考 RODBC 的帮助文档。
另请参考: http://www.douban.com/note/172387172/