Dear unixODBC and psqlodbc maintainers,
I'm trying to use unixODBC with the latest (CVS) psqlodbc library
with PostgreSQL 7.3.
This is all working fine, but, as of 7.3 PostgreSQL returns
aggregate types (e.g. SUMs, COUNTs) as INTEGER8, and so these
results are (correctly) mapped to string types by the ODBC V2 driver.
On Windows NT, using the experimental psqlodbc V3 driver, things
work properly and I get numbers back. On Linux, however, compiling
the experimental psqlodbc V3 driver results in problems. (I did
this by defining ODBCVER to be 0x0351 in config.h)
When I try to connect to the DB, I get the following error:
> Error: Sql-Database-Data-Error id HY092[28] : [unixODBC]ColAttribute for this type not implemented yet
The relevant place in the SQL log file indicates:
> [ODBC][31769][SQLColAttributes.c][230]
> Entry:
> Statement = 0x80723c8
> Column Number = 1
> Field Identifier = 0
> Character Attr = 0x807dc98
> Buffer Length = 4
> String Length = 0x805cd96
> Numeric Attribute = 0x805cd90
> [ODBC][31769][SQLColAttributes.c][557]
> Exit:[SQL_ERROR]
> DIAG [HY092] [unixODBC]ColAttribute for this type not implemented yet
I have verified that the same call (SQLColAttributes) is made, with
the same arguments (Column Number = 1, Field Identifier = 0), and
returns the correct values (0,19) on NT.
This is with unixODBC v 2.2.4 (same behaviour with all previous versions).
I don't rightly know if this is a problem with unixODBC or with
psqlodbc. Since they are (presumably) the same psqlodbc sources on NT
and linux, module some #defines, and the same client application
making identical calls, it seems to me to me more probable that it's a
unixODBC problem, but I'm sending this message to both interested
parties anyhow. Perhaps someone can help me shed some light on this
issue?
Does anyone have a working ODBC V3 driver on unix for PostgreSQL at
the moment?
Thanks,
--
Alain Picard
Memetrics