code: public Reader getCharacterStream(long pos,
                                       long length) throws SQLException {
  
          if (length > Integer.MAX_VALUE) {
              throw Util.outOfRangeArgument("length: " + length);
          }
  
          return new StringReader(getSubString(pos, (int) length));
      }
docs: Returns a <code>Reader</code> object that contains a partial <code>Clob</code> value, starting
  with the character specified by pos, which is length characters in length.
  
  @param pos the offset to the first character of the partial value to
  be retrieved.  The first character in the Clob is at position 1.
  @param length the length in characters of the partial value to be retrieved.
  @return <code>Reader</code> through which the partial <code>Clob</code> value can be read.
  @throws SQLException if pos is less than 1 or if pos is greater than the number of
  characters in the <code>Clob</code> or if pos + length is greater than the number of
  characters in the <code>Clob</code>
  
  @exception SQLFeatureNotSupportedException if the JDBC driver does not support
  this method
  @since JDK 1.6, HSQLDB 1.9.0