code: public void setBlob(final int parameterIndex, final Blob x) throws SQLException {
          if(x == null) {
              setNull(parameterIndex, Types.BLOB);
              return;
          }
          try {
              setParameter(parameterIndex, new StreamParameter(x.getBinaryStream(), x.length()));
          } catch (IOException e) {
              throw SQLExceptionMapper.getSQLException("Could not read stream", e);
          }
      }
docs: Sets the designated parameter to the given <code>java.sql.Blob</code> object. The driver converts this to an SQL
  <code>BLOB</code> value when it sends it to the database.
  
  @param parameterIndex the first parameter is 1, the second is 2, ...
  @param x              a <code>Blob</code> object that maps an SQL <code>BLOB</code> value
  @throws java.sql.SQLException if parameterIndex does not correspond to a parameter marker in the SQL statement;
  if a database access error occurs or this method is called on a closed
  <code>PreparedStatement</code>
  @throws java.sql.SQLFeatureNotSupportedException
  if the JDBC driver does not support this method
  @since 1.2