【问题标题】:BigQuery Java API - Cannot Send Null For TableRow ValueBigQuery Java API - 无法为 TableRow 值发送 Null
【发布时间】:2017-04-12 20:04:03
【问题描述】:

我正在尝试使用 java big query api 在 BigQuery 表上设置值,但每次发送空值时都会抛出 NullPointerException (java.lang.NullPointerException: null value in entry: popup=null)。

null 值应该是完全可以接受的,因为我的模式在架构本身上是 NULLABLE。我有一堆其他字段具有空值。

关于这个问题的任何建议都会对我很有帮助,我因此而无所适从。

注意:我可能会忽略并且不设置那些具有空值的字段,但这不是我正在寻找的解决方案。我的一段代码如下:

TableRow row = new TableRow();
                row.set("ip", "test");
                row.set("popup", null);

【问题讨论】:

    标签: google-bigquery


    【解决方案1】:

    不要将值显式设置为null。简单地忽略它。如果它不存在于 BigQuery 的负载中,它将被设置为 null。无论如何,您将无法将其设置为 null,因为 API 正在检查 null 参数,您无法更改该行为。

    所以,改为这样做:

    TableRow row = new TableRow();
    row.set("ip", "test");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-19
      • 2016-01-18
      • 2012-12-08
      • 1970-01-01
      • 2017-09-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-05
      相关资源
      最近更新 更多