[R] 2 (related) problems with RODBC in 64 bit Windows
Uwe Ligges
ligges at statistik.tu-dortmund.de
Wed Aug 29 15:08:36 CEST 2012
On 24.08.2012 21:53, Ivan Alves wrote:
> Hi all,
>
> I am encountering an RODBC problem in R 2.15.1 in windows 64 bit which I do not encountered in the same set up in windows 32 bit (the latest binary version of RODBC in both cases from the same depository gotten by install.packages(‘RODBC’), Oracle ODBC client software installed in 64 and 32 bit respectively)
>
> 1. The code looks like
>
>
> library(RODBC)
>
> credentials <- read.csv("~/credentials.csv", head=T, row.names=1)
>
> db <- odbcConnect(dsn="DSN", uid=credentials["DSN", "username"], pwd=credentials["DSN", "password"], rows_at_time=1024)
>
>
> on which the odbcConnect call fails with the following error code
>
> Error in nchar(uid) : 'nchar()' requires a character vector
>
> (
>
> credentials are processed correctly and credentials["DSN", "username"] correctly returns – by the way a factor –
>
> [1] _username_
>
> Levels: …
>
> ).
>
>
> When I run the equivalent call with direct arguments
>
>
> db <- odbcConnect("DSN", uid="_username_", pwd="_password_", rows_at_time=1024)
>
>
> it works just fine. Furthermore both work just fine on windows 32 bit, or on both systems when the colClasses = "character" option is used. Is this perhaps a problem with RODBC in 64 bit when dealing with factors that is not a problem in 32 bit?
I think 32-bit and 64-bit behave the same way (but you have not compared
exactly), reading
credentials <- read.csv("~/credentials.csv", head=T, row.names=1)
results in factors for username and password that have to be converted
to character. It is unrelated to RODBC.
>
> 2. Furthermore (and as reported in http://stackoverflow.com/questions/3407015/querying-oracle-db-from-revolution-r-using-rodbc), there are issues with using sqlQuery without the option believeNRows=FALSE, as RODBC seems to still have issues with signed vs. unsigned integer (or sizeof(long) between 32 and 64 bit.
Don't know, but that is something you may want to report (preferrably
including patches) to the package maintainer.
Uwe ligges
>
> Any chance the problems have the same source in RODBC code and could be addressed in the near future (after apparently years of making difficult the transition to 64 bit for work with Oracle servers)? (is there an implicit encouragement to use RJDBC when combining 64 bit R use and Oracle databases?)
>
> Many thanks in advance for any guidance.
>
> Ivan
> [[alternative HTML version deleted]]
>
>
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
More information about the R-help
mailing list