通过R连接到Oracle 10g数据库 [英] Connecting to oracle 10g database through R
问题描述
我想通过R从SQL数据库导入数据.我尝试了太多次(近6小时)连接到服务器.我运行了这些命令,它显示了错误:-
I want to import data from SQL databases through R.I tried too many times(almost 6 hrs) connecting to the server. I ran these command and it shows error:-
jdbcDriver<-JDBC(driverClass ="oracle.jdbc.OracleDriver",classPath ="ojdbc6.jar")
jdbcDriver <- JDBC(driverClass="oracle.jdbc.OracleDriver", classPath="ojdbc6.jar")
jdbcConnection<-dbConnect(jdbcDriver,"jdbc:oracle:thin:@//database.desktop-65l5f3s:1521/orcl",用户名",密码") .jcall(drv @ jdrv,"Ljava/sql/Connection;","connect",as.character(url)[1],中的错误: java.sql.SQLRecoverableException:IO错误:指定了未知主机
jdbcConnection <- dbConnect(jdbcDriver, "jdbc:oracle:thin:@//database.desktop-65l5f3s:1521/orcl", "username", "password") Error in .jcall(drv@jdrv, "Ljava/sql/Connection;", "connect", as.character(url)[1], : java.sql.SQLRecoverableException: IO Error: Unknown host specified
我认为驱动程序存在问题,但无法解决.
I think there is a problem of driver but I am unable to resolve it.
推荐答案
下面是我将R连接到Oracle数据库的方法
Below is what I did to connect R to the Oracle database
- 下载Oracle驱动程序JDK http://www.oracle. com/technetwork/java/javase/downloads/index.html
- 安装RJDBC
然后在r中运行下面的代码
then run the code below in r
library(RJDBC)
## Loading required package: DBI
## Loading required package: rJava
# specify the driver type and location in your machine
jdbcDriver = JDBC("oracle.jdbc.OracleDriver",
classPath="C:/app/techsupport/product/11.2.0/client_1/jdbc/lib/ojdbc6.jar") # may be different on your machine, it's based on your JDK installation
# connect to the database
conn = dbConnect(jdbcDriver, "jdbc:oracle:thin:@//database.hostname.com:port/service_name", # get the database name, port, and service name from you DBA
user = YourUserName,
password = YourPassword)
# get office table using a query string
startTime <- Sys.time() # start timer
OfficeTable = dbGetQuery(conn, "select * from office")
# disconnect after working with database
dbDisconnect(conn)
## [1] TRUE
Sys.time() - startTime # calc time to import table
## Time difference of 0.1630161 secs
# take a look at the data
str(OfficeTable)
## 'data.frame': 373 obs. of 22 variables:
这篇关于通过R连接到Oracle 10g数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!