【发布时间】:2017-06-12 01:36:26
【问题描述】:
我正在用 Go 制作一个 RESTful API,用于在 BigQuery 中写入行。我正在使用Google BigQuery package for Go。
为了创建 BigQuery 方案,我从 example 中描述的结构推断架构。
问题在于,生成的架构将所有非重复字段都设为“必需”,因此,当我想上传具有空值的结构时,空值会作为空字段上传...
这是我的结构示例:
type Stats struct {
Name string `bigquery:"name"`
LastName int `bigquery:"last_name"`
PhoneNumber string `bigquery:"phone_number"`
}
这是如何创建架构的示例:
testSchema, err := bigquery.InferSchema(Stats{})
if err != nil {
// TODO: Handle error.
}
而且,如果我上传一个只有一个字段集的结构:
rows := []*Stats{
{Name: "testA"},
}
u := table.Uploader()
err2 := u.Put(ctx, rows)
结果是,在 BigQuery 中,字段“last_name”和“phone_number”是空字符串“”而不是 NULL
【问题讨论】:
标签: go google-bigquery