0

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

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

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

4

2 回答 2

1

通过 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)

我的另一个最爱是dbplyr在处理数据库时用于类似 dplyr 的函数:

    library(dbplyr)

    tbl(jdbcConnection, "SAMPLE_TABLE_NAME")

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

于 2018-08-13T16:49:00.593 回答
0

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

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

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

于 2019-03-07T17:42:22.563 回答