我正在没有管理员权限的计算机上工作。我使用sql developer连接到内部数据库。我也想通过R连接。
没有管理员权限,有什么方法可以做到这一点?有些解决方案要求我设置systemDNS-我不能这样做。 其他需要我安装jvm.dll
我的环境:Windows7,sqldeveloper,连接方法是通过TNS文件。
答案 0 :(得分:1)
通过R连接到SQL Developer比我遇到的其他数据库困难得多。重要的是,您必须在计算机上安装jdbc6.jar,并且知道其安装位置的文件路径。安装jar文件不需要管理员权限。您可以从Oracle's website安装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")
结果输出将是来自查询表的数据以小节形式。
答案 1 :(得分:0)
您可以在R会话中设置环境变量。
Sys.setenv(OCI_LIB64="/Path/to/instantclient",OCI_INC="/Path/to/instantclient/sdk/include")
您可以将其放在主目录中的文件.Rprofile
中,每次开始新会话时,RStudio都会运行它。在.Rprofile
中拥有此功能后,您应该可以安装ROracle
。