psql2555
2008-Nov-28 08:15 UTC
[R] Passing bigint (8-byte) values from Postgres to R using RPostgreSQL
Hi - I have a simple R script that inserts values into a Postgres table to generate a record that autogenerates a bigint unique ID (basically, a customized bigserial value). When I query the table to retrieve the bigint value, the value returned is not the same as the value created in the database (as evidenced by a direct query of the database table via pgAdmin). e.g. the value created should be an 8-byte integer (specifically 2007111600000100000). However, the value returned in R is different (specifically 2007111600000100096). For every bigint value, the value returned is the value generated by the database + 96. An example of the code to obtain the value from the database is as follows: ------------------------------------ PgSQLdrv <- dbDriver("PostgreSQL") con <- dbConnect(PgSQLdrv,host="localhost",dbname="MyDB",user="user",password="password",port=5432) rs <- dbSendQuery(con,statement = paste('SELECT "UID" FROM "mytable" LIMIT 1',sep='',collapse='')) val <- fetch(rs,n = -1) ------------------------------------ How may I correct the error? Is this an endian issue with the Windows driver? Running: Postgres v8.3.5 R v2.8.0 RPostgreSQL v0.1-2 Windows XP SP2 Thanks - -- View this message in context: http://www.nabble.com/Passing-bigint-%288-byte%29-values-from-Postgres-to-R-using-RPostgreSQL-tp20730401p20730401.html Sent from the R help mailing list archive at Nabble.com.