On Thu, 13 Dec 2007, Thomas Kellerer wrote:

I am contemplating to use postgresql for a product that requires to
manipulate many blobs.
From the documentation I am not clear if one has to use postgres api to
insert/update/select blobs or one can use standard jdbc api?
Can I just execute a statement insert into (..) that has a blob and do a
getBlob to retrieve it?

Using a PreparedStatement with setBinaryStream() to insert the blob and getBinaryStream() to read the BLOB works fine for me.


It depends how you want to handle binary data on the server side. get/setBinaryStream only work with the bytea data type. getBlob/setBlob only work with real large objects (oid data type). Both methods work, it's just a tradeoff on how you want handle it on the server. The API downside of Blob is that only JDBC4 offers a portable way to create a Blob (Connection.createBlob) and the pg driver does not implement that yet.

Kris Jurka

---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to