Обсуждение: binary copy timestamps with libpq

Поиск
Список
Период
Сортировка

binary copy timestamps with libpq

От
Stephen Byers
Дата:
I am using postgres 8.1.4 and am trying to use the binary copy interface via libpq (PQputCopyData, PQputCopyEnd).  I am having trouble doing the copy for timestamp fields. 
 
I have tried a few different ways, setting the paramFormat to 0 (ASCII) and paramType to OID_TIMESTAMP (1114).  I've tried various strings, quoted and unquoted, also with "::timestamp" as part of the string -- but I am having no luck at getting the data to insert.  ('2006-10-19 05:26:00'::timestamp)
 
What am I doing wrong?  Is ASCII supported for timestamp type in binary copy mode?  If not, how do I convert my timestamp to postgres's format (I am using default settings)
 
(I am also having the same trouble with the interval data type.)
 
Any help most appreciated!
Thanks,
Steve


Re: binary copy timestamps with libpq

От
Stephen Byers
Дата:
I just discovered PGTYPEStimestamp_from_asc().
I'm sure that will help me -- is this the correct method to use?

 
----- Original Message ----
From: Stephen Byers <stephenabyers@yahoo.com>
To: pgsql-interfaces@postgresql.org
Sent: Wednesday, October 18, 2006 11:38:19 PM
Subject: [INTERFACES] binary copy timestamps with libpq

I am using postgres 8.1.4 and am trying to use the binary copy interface via libpq (PQputCopyData, PQputCopyEnd).  I am having trouble doing the copy for timestamp fields. 
 
I have tried a few different ways, setting the paramFormat to 0 (ASCII) and paramType to OID_TIMESTAMP (1114).  I've tried various strings, quoted and unquoted, also with "::timestamp" as part of the string -- but I am having no luck at getting the data to insert.  ('2006-10-19 05:26:00'::timestamp)
 
What am I doing wrong?  Is ASCII supported for timestamp type in binary copy mode?  If not, how do I convert my timestamp to postgres's format (I am using default settings)
 
(I am also having the same trouble with the interval data type.)
 
Any help most appreciated!
Thanks,
Steve