Class InsertAllRequest.RowToInsert

java.lang.Object
com.google.cloud.bigquery.InsertAllRequest.RowToInsert
All Implemented Interfaces:
Serializable
Enclosing class:
InsertAllRequest

public static class InsertAllRequest.RowToInsert extends Object implements Serializable
A Google Big Query row to be inserted into a table. Each RowToInsert has an associated id used by BigQuery to detect duplicate insertion requests on a best-effort basis.

To ensure proper serialization of numeric data, it is recommended to supply values using a string-typed representation. Additionally, data for fields of LegacySQLTypeName.BYTES must be provided as a base64 encoded string.

Example usage of creating a row to insert:


 List<Long> repeatedFieldValue = Arrays.asList(1L, 2L);
 Map<String, Object> recordContent = new HashMap<String, Object>();
 recordContent.put("subfieldName1", "value");
 recordContent.put("subfieldName2", repeatedFieldValue);
 Map<String, Object> rowContent = new HashMap<String, Object>();
 rowContent.put("booleanFieldName", true);
 rowContent.put("bytesFieldName", "DQ4KDQ==");
 rowContent.put("recordFieldName", recordContent);
 rowContent.put("numericFieldName", "1298930929292.129593272");
 RowToInsert row = new RowToInsert("rowId", rowContent);
 
See Also:
  • Method Details

    • getId

      public String getId()
      Returns the id associated with the row. Returns null if not set.
    • getContent

      public Map<String,Object> getContent()
      Returns the actual content of the row, as a map.

      The returned map is always immutable. Its iteration order is unspecified.

    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • of

      public static InsertAllRequest.RowToInsert of(String id, Map<String,?> content)
      Creates a row to be inserted with associated id.

      To ensure proper serialization of numeric data, supply values using a string-typed representation. Additionally, data for fields of LegacySQLTypeName.BYTES must be provided as a base64 encoded string.

      Parameters:
      id - id of the row, used to identify duplicates
      content - the actual content of the row
    • of

      public static InsertAllRequest.RowToInsert of(Map<String,?> content)
      Creates a row to be inserted without associated id.

      To ensure proper serialization of numeric data, supply values using a string-typed representation. Additionally, data for fields of type LegacySQLTypeName.BYTES must be provided as a base64 encoded string.

      Parameters:
      content - the actual content of the row