Notes-这两天要连的数据库! sql server & oracle

一笑奈何 提交于 2019-12-06 02:17:46

三个步骤:

Step 1-创建ODBC数据源;

Step 2-install.packages('RODBC') ;

Step 3-编写连接测试脚本

 

(1)创建ODBC数据源

控制面板->系统和安全->管理工具->ODBC数据源(64位)->系统DSN,点击添加按钮,

接着选择安装数据源驱动程序 SQL Server,点击完成

 

填写名称和服务器,名称用于R连接需要用到的database,比如这里填入myData,

sqlserver的服务器名可以在登陆sqlserver的可视化界面那里找到

 

接着用户身份连接sqlserver

 

 点击【测试数据源】

测试成功之后,完成创建ODBC数据源,继续下一步!

 

(2)在RStudio的Console,install.packages('RODBC')

复制代码
> install.packages('RODBC')
Installing package into ‘C:/Users/lmei/Documents/R/win-library/3.5’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/3.5/RODBC_1.3-15.zip'
Content type 'application/zip' length 879575 bytes (858 KB)
downloaded 858 KB

package ‘RODBC’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\lmei\AppData\Local\Temp\Rtmp6Fwdfk\downloaded_packages
复制代码

(3)编写R脚本,ConnectSqlServer.R(‘myData’为第一步创建ODBC数据源时填写的名称),代码如下,运行代码

library('RODBC')
myConn <- odbcConnect('myData',uid='sa',pwd='123456')
count = sqlQuery(myConn,"select count(*) from tb_test")
print(count)

console输出

library('RODBC')
myConn<-odbcConnect('myData',uid='sa',pwd='123456')
count = sqlQuery(myConn,"select count(*) from tb_test")
print(count)

  

1.设置"ODBC数据源(64位)"

图1:控制面板>管理工具>ODBC数据源(64位)

图2:有些设置,自己要记得,红字中的代码会用到。

 

2.代码部分

复制代码
> library(RODBC)  ##加载RODBC包,没有成功的请先下载安装install.packages("RODBC")
> con<-odbcConnect("oracle",uid="testuser",pwd="testuser",believeNRows=FALSE) ##建立Oracle连接
> emp1<-sqlQuery(con,"select * from EMP") ##sqlQuery可带查询语句
> sqlFetch(con,'EMP')  ##sqlFetch可根据表名,获取Oracle中的表(注意,这里表名在单引号中,双引号会报错) > odbcClose(con)  ##关闭连接
    EMPNO  ENAME       JOB  MGR   HIREDATE  SAL COMM DEPTNO
1    7369  SMITH     CLERK 7902 1980-12-17  800   NA     20
2    7499  ALLEN  SALESMAN 7698 1981-02-20 1600  300     30
3    7521   WARD  SALESMAN 7698 1981-02-22 1250  500     30····
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!