Re: SQL Error- SQLBindColumn and TimeStamp Field

From: "Greg Campbell" <greg(dot)campbell(at)us(dot)michelin(dot)com>
To: Ed Brown <ebrown(at)arcompanies(dot)net>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: SQL Error- SQLBindColumn and TimeStamp Field
Date: 2004-11-17 20:17:49
Message-ID: 419BB1ED.7050000@us.michelin.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Please clarify "trying to insert a Timestamp field"
Are you doing Data Definition -- creating a timestamp field
or
Data Manipulation -- populating data into an existing timestamp field.

If data manipulation:
I do not know Delphi, but couldn't you execute as query string against a
connection -- a string like
"INSERT INTO my_table (my_time) VALUES ('2004-11-17 12:10:35')"?

and did you mean for the year value to be 200?

Ed Brown wrote:

> I have been trying to do an insert into a TimeStamp field in
> Postgresql 7.34 (running on Suse 9.0, if it matters). The application
> is in Delphi 7.0, but the code is similar enough that you C gurus
> should be able to see what's happening. I get the text as a string,
> parse it into the various elements, and populate the
> SQL_TimeStamp_Structure. When I execute the SQLBindColumn function I
> get the following message:
>
> Unable to Bind Parameter- State: S1003, Error # 0,
> [Microsoft][ODBC Driver Manager] Program type out of range
>
> The values in the structure are reasonable, and other elements work
> properly. Can anyone either tell me what I'm doing wrong, or show me
> an example of setting a Timestamp value that works?
>
> Thanks very much. Code Follows
>
> Ed Brown
> ------------------------------------------------------------------------
>
> New(pTimeStamp);
> DecodeDate(dtThis, i1,i2,i3);
> pTimeStamp^.year := i1;
> pTimeStamp^.Month := i2;
> pTimeStamp^.Day := i3;
> DecodeTime(dtThis, i1,i2,i3,i4);
> pTimeStamp^.Hour := i1;
> pTimeStamp^.minute := i2;
> pTimeStamp^.second := i3;
> pTimeStamp^.fraction := i4;
>
> New(piTemp);
> lIntegers.Add(piTemp);
>
> // Fails on next call
> retcode := SQLBindParameter(hSTMT, i + 1, SQL_PARAM_INPUT,
> SQL_C_TYPE_TIMESTAMP,
> SQL_TYPE_TIMESTAMP,
> SizeOf(SQL_TIMESTAMP_STRUCT), 0 ,
> pTimeStamp,
> SizeOf(SQL_TIMESTAMP_STRUCT), piTemp) ;
> ------------------------------------------------------------------------
> The values are:
>
> pTimeStamp^.year = 200
> pTimeStamp^.Month = 7
> pTimeStamp^.Day = 15
> pTimeStamp^.Hour := 11
> pTimeStamp^.minute := 15
> pTimeStamp^.second := 0
> pTimeStamp^.fraction := 0
>

Attachment Content-Type Size
greg.campbell.vcf text/x-vcard 283 bytes

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Ed Brown 2004-11-17 22:18:10 Re: SQL Error- SQLBindColumn and TimeStamp Field
Previous Message Ed Brown 2004-11-17 19:03:38 SQL Error- SQLBindColumn and TimeStamp Field