使用sql developer中的信息,通过R连接到ORACLE



我在一台没有管理权限的机器上工作。我使用sql developer连接到一个内部数据库。我也想通过R连接。

有什么办法可以做到这一点,没有管理员权限?有些解决方案需要我设置一个系统DNS,但我做不到。其他要求我安装jvm.dll

我的环境:Windows7,sqldeveloper,连接方式是通过TNS文件。

通过R连接到SQL Developer比我遇到的其他数据库要困难得多。重要的是,您的机器上安装了jdbc6.jar,并且您知道它的安装位置的文件路径。安装jar文件不需要管理员权限。您可以从Oracle的网站安装jar文件。

我使用RJDBC包进行连接,如下所示:

library(RJDBC)
jdbcDriver <- JDBC("oracle.jdbc.OracleDriver", classPath = "file path to where ojdbc6.jar is installed on your computer")
jdbcConnection <- dbConnect(jdbcDriver, "jdbc:oracle:thin:@YOUR_SERVER","YOUR_USERNAME","YOUR_PASSWORD")

然后,您可以使用多个命令测试连接;我通常使用:

dbListTables(jdbcConnection)

我的另一个最爱是在使用数据库时使用类似dplyr的函数dbplyr

library(dbplyr)
tbl(jdbcConnection, "SAMPLE_TABLE_NAME")

结果输出将是来自tibble形式的查询表的数据。

您可以在R会话中设置环境变量。

Sys.setenv(OCI_LIB64="/Path/to/instantclient",OCI_INC="/Path/to/instantclient/sdk/include")

您可以将其放在主目录中的文件.Rprofile中,每次开始新会话时,RStudio都会运行它。一旦您在.Rprofile中有了这个,您就应该能够安装ROracle了。

相关内容

  • 没有找到相关文章

最新更新