JDBC/MX 5.0 Driver for SQL/MX Programmer's Reference (SQL/MX 2.x)

// obtain the InputStream from ResultSet
InputStream is = rs.getBinaryStream("myBlobColumn");
// read Blob data using the InputStream
byte[] myBlobData = new byte[length];
is.read(myBlobData, offset, length);
Updating BLOB Data
You can update BLOB data by using the methods in the Blob interface or by using the updateClob method of the
ResultSet interface. The JDBC/MX driver makes changes to the BLOB data directly. Hence, the JDBC/MX driver
returns false to the locatorsUpdateCopy method of the DatabaseMetaData interface. Applications do not need to
issue a separate update statement to update the BLOB data.
Update BLOB data in the following ways.
Updating Blob Objects by using the updateBlob Method
Replacing Blob Objects
Updating Blob Objects by Using the updateBlob Method
Unlike some LOB support implementations, the JDBC/MX driver updates the BLOB data directly in the database. So,
when the Blob object is the same in the updateBlob method as the object obtained using getBlob, the updateRow
method of the ResultSet interface does nothing with the Blob object.
When the Blob objects differ, the Blob object in the updateBlob method behaves as if the setBlob method was issued.
See Inserting a Blob Object with the setBlob Method.
Replacing Blob Objects
You can replace Blob objects in the following ways:
Use the EMPTY_BLOB() function to replace the Blob object with the empty Blob object.
Replace an existing Blob object in a row by inserting the Blob with new data as described under Inserting a
BLOB Column Using the Blob Interface.
Use the setBinaryStream() method to of the PreparedStatement interface replace the existing Blob object
with new BLOB data.
Use the setBlob or updateBlob methods to replace the existing BLOB objects as explained earlier under Inserting
a Blob Object with the setBlob Method and Updating Blob Objects with the UpdateBlob Method.
Deleting BLOB Data
To delete BLOB data, the JDBC application uses the SQL DELETE statement to delete the row in the base table.
When the row containing the BLOB column is deleted by the application, the corresponding BLOB data is automatically
deleted by the delete trigger associated with the base table. For information about triggers, see Using an SQL/MX
Trigger to Delete LOB Data.