Hello folks,
I would greatly appreciate some help with using large objects in PostgreSQL
via JDBC. I need to create a JDBC-compliant database application tha
supports multiple database vendors, so using any PostgreSQL-specific
extensions is difficult. I am trying to replace my current Oracle-on-Linux
setup with PostgreSQL, and not having much luck.
My setup is Red Hat Linux 7.1 (or 7.2) running the IBM JDK 1.3. I have
installed the PostgreSQL version distributed via the stock Red Hat RPMs for
that OS version.
Also, I am a relative newbie to PostgreSQL, although I have worked with
other databases (Oracle and Pointbase in particular). So please forgive any
errors/omissions on my part.
I need to store and retrieve large binary objects. To this end, I have
followed the directions in the JDBC documentation distributed with the
PostgreSQL package. Specifically I use the oid data type wherever a large
object is needed, and the ResultSet's setBinaryStream/getBinaryStream
methods to store and retrieve data.
When I try this setup using the JDBC 7.1-1.2 drivers, the problem that
arises is the driver's inability to handle null values:
FastPath call returned ERROR: inv_open: large object 0 not found
I would expect that, if the value is null, the driver would return null
instead of throwing an exception.
I found reports of this bug on Google and the PostgreSQL mailing list, and
the recommendation was to use the newer drivers. Well, that doesn't work
either: both the 7.1-1.2 and 7.1-1.3 drivers (which I downloaded from
jdbc.fastcrypt.com) fail with an error like
java.sql.SQLException: ERROR: oidin: error in "..."
when I try to insert a record containing a blob.
And yes, I do use setAutoCommit to ensure that retrievals/updates happen
within a transaction, as described in the JDBC documentation.
So I am now unable to use PostgreSQL. Any help is greatly appreciated. I
will be glad to give more details (e.g., source code snippets) to clarify
if needed.
Thanks in advance.
=====
Sridhar
---
M. A. Sridhar
m_a_sridhar@yahoo.com
__________________________________________________
Do You Yahoo!?
Great stuff seeking new owners in Yahoo! Auctions!
http://auctions.yahoo.com