Bill Oliver created HIVE-7134:
---------------------------------

             Summary: Implement ResultSet.getBytes()
                 Key: HIVE-7134
                 URL: https://issues.apache.org/jira/browse/HIVE-7134
             Project: Hive
          Issue Type: Improvement
            Reporter: Bill Oliver


I'd like to see an implementation of ResultSet.getBytes().

Here is my (untested) implementation. This could certainly be improved upon.

        public byte[] getBytes(int columnIndex) throws SQLException {
                Object value = getColumnValue(columnIndex);
                if (wasNull) {
                        return null;
                }
                if (value instanceof byte[]) {
                        return (byte[]) value;
                }

                try {
                        // this implementation will work on any Object that 
implements java.io.Serializable
                        // includes Number, Date, Timestamp, or String
                        ByteArrayOutputStream b = new ByteArrayOutputStream();
                        ObjectOutputStream o = new ObjectOutputStream(b);
                        o.writeObject(value);
                        return b.toByteArray();
                } catch (IOException e) {
                        throw new SQLException(e);
                }
        }

  public byte[] getBytes(String columnName) throws SQLException {
    return getBytes(findColumn(columnName));
  }



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to