JDBC Type 4 Driver 1.1 Programmer's Reference

Note:
The EMPTY_BLOB() function is an HP NonStop specific function and might
not work on other databases.
Do not use the EMPTY_BLOB() function when using the
PreparedStatement interface.
Then, obtain the handle to the empty BLOB column by selecting the BLOB column for update.
The following code illustrates how to obtain the handle to an empty BLOB column:
Blob myBlob = null;
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("Select myBlobColumn
from myTable where …For update");
if (rs.next())
myBlob = rs.getBlob(1);
You can now write data to the BLOB column. See Writing Binary Data to a BLOB Column.
Note: Limitation: Do not rename the BLOB column in the select query.
Writing Binary Data to a BLOB Column
To write data to the BLOB column, use the Blob interface. The following code illustrates using
the setBinaryStream method of the Blob interface to write BLOB data:
// Stream begins at position: 1
long pos = 1;
// String containing the binary data
String s ;
// Obtain the output stream to write Blob data
OutputStream os = myBlob.setBinaryStream(pos);
// write Blob data using OutputStream
byte[] myBlobData = s.getBytes();
os.write(myBlobData);
The Type 4 driver splits the output stream into chunks and stores the chunks in the LOB table.
Inserting a BLOB Column by Using the PreparedStatement
Interface
To insert a BLOB column that has binary data from an InputStream, use the
PreparedStatement interface:
InputStream inputBinary;