我在没有管理员权限的机器上工作。我使用 sql developer 连接到内部数据库。我也想通过 R 连接。
有没有什么办法可以做到这一点,没有管理员权限?有些解决方案需要我设置一个 systemDNS——我做不到。其他需要我安装 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)
我的另一个最爱是dbplyr
在处理数据库时用于类似 dplyr 的函数:
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
.