Re: import_bytea function

From: Thomas Kellerer <spam_eater(at)gmx(dot)net>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: import_bytea function
Date: 2016-10-07 08:54:01
Message-ID: nt7nr7$2ku$1@blaine.gmane.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Stephen Davies schrieb am 07.10.2016 um 10:46:
>> You can store the contents of a file in a bytea using plain JDBC no lo_import() required
>>
>> String sql = "insert into images (id, image_data) values (?,?)";
>> Connection con = ....;
>> File uploaded = new File("...");
>> InputStream in = new FileInputStream(uploaded);
>> PreparedStatement pstmt = con.prepareStatement(sql);
>> pstmt.setInt(1, 42);
>> pstmt.setBinaryStream(in, (int)uploaded.length());
>> pstmt.executeUpdate();
>>
>> This *only* works with bytea column, not with "large objects".
>>
>> In production code you obviously need to close all resources and handle errors.
>> I left that out for simplicity.

> That looks reasonable but I need to update rather than insert and my similar
> code with sql="update part set pic=? where id=3" did not work.

That *will* work (using that myself for updates as well).

What exactly is your problem? What was the error/exception?

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rakesh Kumar 2016-10-07 12:29:18 pgpool question
Previous Message Stephen Davies 2016-10-07 08:46:13 Re: import_bytea function