Re: BLOB help - yes I've read around!

From: Achilleas Mantzios <achill(at)matrix(dot)gatewaynet(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Cc: Brad Milne <mail_4brad(at)yahoo(dot)co(dot)uk>
Subject: Re: BLOB help - yes I've read around!
Date: 2009-04-07 14:21:28
Message-ID: 200904071721.28357.achill@matrix.gatewaynet.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Στις Tuesday 07 April 2009 17:04:19 ο/η Brad Milne έγραψε:
> Thanks Achilleas
>
> So how do you save the bytea data? I get:
> Method org.postgresql.jdbc4.Jdbc4PreparedStatement.setBinaryStream(int,
> InputStream) is not yet implemented
>

I never worked with JDK 1.6 and JDBC4,
from http://jdbc.postgresql.org/download.html we see:
"Support for JDBC4 methods is limited. The driver builds, but the majority of new methods are stubbed out."
i dont know if that is relevant, i just saw the "jdbc4" part in your org.postgresql.jdbc4.Jdbc4PreparedStatement.setBinaryStream

Having said that, i usually call setBytes.

>
>
> Achilleas Mantzios wrote:
> > Στις Tuesday 07 April 2009 16:31:11 ο/η Brad Milne έγραψε:
> >
> >> Hi all
> >>
> >> I'm a Java dev, new to postgres. I've just migrated an app during
> >> development from Derby to Postgres (due to better indexing features),
> >> but am very confused by the failing BLOB implementations.
> >>
> >> PostgreSQL: 8.3.7
> >> PostgreSQL-JDBC: 8.3-604
> >> JDK: 6
> >>
> >> A lot of what I've seen in searches and even in the google groups page,
> >> seems to be related to older jdbc drivers, where BLOBs were supported,
> >> both for OID and bytea. I'm currently getting 'unimplemented' exceptions
> >> doing anything with BLOBs.
> >>
> >> My application saves sound files as byte arrays to the database.
> >>
> >> Q1: Given that it's sound and not text, would it be safe to use bytea
> >> given that certain characters need to be escaped?
> >>
> >
> > I have been storing binary data in bytea for ages with postgresql,
> > with no major problems.
> > Performance might be an issue.
> > It is a good practice to store along with the bytea value,
> > its mime type as well.
> > So in your binary library you could have mp3s,oggs,mpegs, ms docs, jpegs, pdfs,
> > and your servlet would know exactly the content type to serve to the client.
> >
> > Also to answer your question about safeness/escaping, etc...
> > those are taken care by the jdbc driver.
> >
> >
> >> Q2: How on earth do I use the BLOB methods? In particular setBlob(int
> >> parameterIndex, InputStream inputStream) and/or createBlob() and
> >> setBlob(int parameterIndex, Blob x)?
> >>
> >>
> >
> > I never did anything with BLOBs so no experience from me here.
> >
> >
> >> Thanks a lot
> >> Brad
> >>
> >>
> >
> >
> >
> >
>
>

--
Achilleas Mantzios

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message John Lister 2009-04-07 14:24:22 Array passing
Previous Message Oliver Jowett 2009-04-07 14:13:38 Re: What do people use for connection pooling with PostgreSQL JDBC