R for windows连接oracle数据库

时间:2021-08-13 13:15:00

相关资料均出自R manual。

只包含RODBC方法。其他OCI等暂不考虑。


1.安装R软件。


2.安装oracle。

如果是64位win7,最好也安装32位版本。我选择的版本是OracleXE112_Win32,oracle官网下载地址:

http://www.oracle.com/technetwork/products/express-edition/downloads/index.html

安装目录:D:\oraclexe

类似TNS_ADMIN的目录:D:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN

这个目录下面有tnsnames.ora,listener.ora,sqlnet.ora等配置文件,修改TNSNAMES.ORA文件添加需要登录的数据库service_name。

XNJDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.120.2)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = dbltn)
    )
  )


3.下载RODBC。

地址:http://cran.csdb.cn/index.html。这个是官网中国镜像。--地址貌似过期,新地址参考进入R manuals,选择R Data Import/Export ,搜索RODBC进入即可。

将解压出来的RODBC文件夹放到R安装目录的library目录下。


4.打开RGUI,

>library(RODBC)

>channel <- odbcConnect("XNJDB")

若数据库可用,此时输入DBUSER/PASSWORD就可以建立连接了。

R for windows连接oracle数据库


5.如果出现下面的错误:


那么可能需要在win7 ODBC添加相应的数据源DSN。64bit win7:C:\Windows\SysWOW64\odbcad32.exe;32bit win7 system32下.

如果还有报错:

R for windows连接oracle数据库

如果是32位RGUI,那么需要将RODBC\libs\i386文件夹下的RODBC.dll文件cp到C:\Windows\System32;64位将RODBC\libs\x64文件夹下RODBC.dll复制到

C:\Windows\SysWOW64。


大致这么多,具体问题需具体分析。