I wonder what the C type of int8 / serial8 is.
If I use SQLGetTypeInfo() to get all the supported type is says that
int8 is of SQL type SQL_BIGINT. It does not show any values for serial8
but I suppose that that is a user defined type and the driver is not
required to show those (is that correct?).
If I use SQLColumns() and get the data type from that function, is says
for both int8 and serial8 that the SQL type is SQL_BIGINT. There is
however not mapping for SQL_BIGINT to a C type. There is a mapping to a
signed or unsigned 8 byte integer (SQL_C_SBIGINT or SQL_C_UBIGINT).
>From the docs
(http://www.postgresql.org/docs/8.3/interactive/datatype.html , table
8.1) I see that int8 is a "signed eight-byte integer". For serial8 it
only says "autoincrementing eight-byte integer". So I assume that int8
is actually SQL_C_SBIGINT, but I am unsure about serial8: is it signed
Shouldn't both SQLGetTypeInfo and SQLColumns return SQL_C_SBIGINT for
int8, and/or return SQL_C_SBIGINT/SQL_C_UBIGINT for serial8,. depending
on the signed-ness?
tel: 024-3888063 / 06-51855277
pgsql-odbc by date
|Next:||From: Joost Kraaijeveld||Date: 2008-08-11 06:18:50|
|Subject: time with time zone sql type?|
|Previous:||From: Hiroshi Inoue||Date: 2008-08-09 00:41:31|
|Subject: Re: Should/does SQLForeignKeys work (8.03.02)?|