The following bug has been logged online:
Bug reference: 2267
Logged by: Gerhard Lutz
Email address: gerhard.lutz@mbtech-group.com
PostgreSQL version: 8.1.3
Operating system: Windows XP SP2
Description: Accessing large objects via ODBC
Details:
I want to upgrade my PostgreSQL server from 8.0.4 to 8.1.3.
My C++ application connects to the database via ODBC (ODBC driver:
PostgreSQL Unicode).
I've installed 8.1.3 with "large objects (lo)" and created a table
CREATE testdata
(id integer not null,
buffer lo);
So far this worked.
Now if I want to get the 'buffer' column
::SQLExecDirect(m_hStmt, (unsigned char*)"SELECT buffer FROM testdata WHERE
id=6", SQL_NTS);
::SQLFetch(m_hStmt);
::SQLGetData(m_hStmt, nCol, SQL_C_BINARY, pBuffer, nPacketSize,
&sdODataLength);
I get the error message
"Received an unsupported type from Postgres. (14)"
In PostgreSQL 8.0.4 this worked without a problem.
In 8.1.3 I can also see in pgAdmin III that there are no functions lo_in(lo)
and lo_out(lo) in the tree.
Perhaps this is an installation bug in 8.1.3?