使用ROracle会在.oci.fetch(res,as.integer(n))中生成错误:ORA-01805:

时间:2015-11-16 08:46:57

标签: r roracle

我使用ROracle来增强从Oracle到R的数据读取。 PC和OS规格:i5,8Gb,Win7 64bit,Oracle 12c(客户端64位),R(64位,3.2.2),Rstudio

当前代码原样:

>install.packages('ROracle_1.1-12.zip', repos = NULL)
>library('ROracle')
>drv <- dbDriver("Oracle")
>con <- dbConnect(drv, "USER", "PASSWORD", dbname='DB')
>x<-dbSendQuery(con, "SELECT * FROM MY_TABLE")
>y<-fetch(x)

但是出现了一些错误:

  

.oci.fetch(res,as.integer(n))出错:ORA-01805:....

重点是错误不是永久性的。 Somitemes它出现了,有时它没有,脚本运行正常。 我非常感谢你对这种情况的帮助。

2 个答案:

答案 0 :(得分:0)

可能你有不同的TZ(服务器\客户端)试试

RiakFuture<SearchOperation.Response, BinaryValue> searchResult = client.executeAsync(searchOp); searchResult.await(); com.basho.riak.client.core.operations.SearchOperation.Response response = searchResult.get(); logger.debug("number of results {} ", response.numResults());

  

SESSIONTIMEZONE DBTIMEZONE

     

1 +03:00 +04:00

如果你有不同的值改变TZ

dbGetQuery(con,"SELECT SESSIONTIMEZONE,DBTIMEZONE FROM dual")
  

SESSIONTIMEZONE DBTIMEZONE

     

1 +04:00 +04:00

可能它可以帮到你

答案 1 :(得分:0)

我通过在DB管理员的帮助下将oracle客户端重新安装到相同64位的当前服务器的lateste版本来解决了这个问题。并设置最新版本的ROracle包(如何安装ROracle,请参阅详细信息gist.github.com/jgilfillan/7b0281067ed9feb4a71c)。