V S P wrote:
> HI,
> I did some more tracing, and it looks like the data is sent to ODBC
> correctly (bigint, char, bigint)
> and it is somewhere within ODBC driver or after, bigints are converted
> to strings
> Wanted to ask if there is may be a workaround of some sort to keep
> bigints
> as number not strings
>
>
> here is the ODBC trace of the offending update (Ascii driver on windows)
> the bigint appear to be 'announced' as bigints
> (prb_bigint is my program name)
>
> The error indicates, however that somewhere bigint is converted to a
> string
> in 'f3=t.f3"
>
> DIAG [42883] ERROR: operator does not exist: bigint = text;
> Error while executing the query (7)
>
>
> ------------------------
> prb_bigint d98-110 ENTER SQLPrepare
> HSTMT 00921C28
> UCHAR * 0x009078F0 [ -3] "UPDATE test_tab SET f2= t.f2,f3=t.f3 from(VALUES( ? , ?
, ? ))as t(f1,f2,f3) WHERE test_tab.f1=t.f1\ 0"
> SDWORD -3
How about
UPDATE test_tab SET f2=t.f2, f3=t.f3 from (VALUES (?::bigint, ?,
?::bigint)) as t(f1,f2,f3) WHERE test_tab.f1=t.f1
?
regards,
Hiroshi Inoue