From: | Brad Milne <mail_4brad(at)yahoo(dot)co(dot)uk> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Cc: | Thomas Kellerer <spam_eater(at)gmx(dot)net>, Achilleas Mantzios <achill(at)matrix(dot)gatewaynet(dot)com> |
Subject: | Re: BLOB help - yes I've read around! |
Date: | 2009-04-07 21:34:20 |
Message-ID: | 49DBC6DC.5030609@yahoo.co.uk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Thanks to you both
This works for me Thomas. For completeness, here is the setter again
with a couple of fixes:
stmt.setBinaryStream(2,in,in.available());
or optionally (if it is a file):
stmt.setBinaryStream(2,in,blobFile.length());
Thomas Kellerer wrote:
> Brad Milne, 07.04.2009 16:04:
>> So how do you save the bytea data? I get:
>> Method
>> org.postgresql.jdbc4.Jdbc4PreparedStatement.setBinaryStream(int,
>> InputStream) is not yet implemented
>>
>
> The following has been working for me since I think 8.1 (and the
> corresponding JDBC driver):
>
> Statement stmt = con.prepareStatement(
> "INSERT INTO blob_table (id, blob_col) VALUES (?,?)");
> stmt.setInt(1, 42);
>
> File blobFile = new File("my_picture.jpg");
> InputStream in = new FileInputStream(blobFile);
> stmt.setBinaryStream(2, r, (int)f.length());
> stmt.executeUpdate();
> con.commit();
>
> Thomas
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Kellerer | 2009-04-07 21:41:53 | Re: BLOB help - yes I've read around! |
Previous Message | John Lister | 2009-04-07 21:03:09 | Re: Array passing |