public Comparable<?> getValue(ResultSet rs) throws Exception {
        if("int".equals(dataType)) {
            return rs.getInt(columnName);
        }
        if("bigint".equals(dataType)) {
            return rs.getLong(columnName);
        }
        if("nchar".equals(dataType)) {
            return rs.getString(columnName);
        }
        if("varchar".equals(dataType)) {
            return rs.getString(columnName);
        }
        if("uniqueidentifier".equals(dataType)) {
            byte[] bytes = rs.getBytes(columnName);
            UUID uuid = UuidUtil.byteArrayToUuid(bytes);
            return uuid;
        }
        if("date".equals(dataType))
        {
        	return rs.getDate(columnName);
        }
        throw new RuntimeException("Type not recognized: " + dataType);
    }