> I'm trying to read/write timestamps as binary data, but I'm getting
> garbage. It looks like there are 8 bytes of timestamp data (if I read
> the headers correctly), which I had assumed was the time in millis from
> the PostgreSQL epoch, but my values are way off. I wrote what I thought
> was valid data to my timestamp columns, but my queries in the psql
> console show (epoch?) for each one. When I read the binary content
> back, I'd expect to get 0s, but I get some non-zero values.
Don't use binary formats. But if you do:
A date is returned as a 4-byte big-endian integer representing the number
of days since POSTGRES_EPOCH_DATE.
A timestamp is returned as an 8-byte big-endian double precision number of
seconds since POSTGRES_EPOCH_DATE.
A time is returned as an 8-byte big-endian double precision number of
seconds since midnight.
POSTGRES_EPOCH_DATE is January 1, 2000 (2000-01-01).
In response to
pgsql-interfaces by date
|Next:||From: Greg Sabino Mullane||Date: 2005-04-08 01:43:32|
|Subject: DBD::Pg version 1.41 released|
|Previous:||From: Tom Lane||Date: 2005-04-07 23:52:32|
|Subject: Re: What is the binary format for timestamps? |