code: public void add(Map<String, Object> map) throws SQLException {
          if (withinDataSetBatch) {
              if (batchData.size() == 0) {
                  batchKeys = map.keySet();
              } else {
                  if (!map.keySet().equals(batchKeys)) {
                      throw new IllegalArgumentException("Inconsistent keys found for batch add!");
                  }
              }
              batchData.add(map);
              return;
          }
          int answer = executeUpdate(buildListQuery(map), new ArrayList<Object>(map.values()));
          if (answer != 1) {
              LOG.warning("Should have updated 1 row not " + answer + " when trying to add: " + map);
          }
      }
docs: Adds the provided map of key-value pairs as a new row in the table represented by this DataSet.
  
  @param map the key (column-name), value pairs to add as a new row
  @throws SQLException if a database error occurs