我正在尝试使用CSV将大量数据导入平面表。在导入BigQuery报告期间:
- File: 0 / Line:6659 / Field:11: Could not parse '' as a timestamp
在架构中,我有2个时间戳:字段4和11。两者都可以为空。对于第二个时间戳,字段11上的行条目确实为空。
它应该像这样工作还是我需要将其发送为“0”?
答案 0 :(得分:2)
请注意空值和空字符串之间的区别。上面复制的第6659行有空字符串,但不是空字符。
为了重现,我用这个模式创建了一个表:
[{"name":"a","type":"TIMESTAMP","mode":"NULLABLE"},
{"name":"b","type":"TIMESTAMP","mode":"NULLABLE"}]
然后将此文件上传到它:
"",""
我收到此错误的地方:
File: 0 / Line:1 / Field:1, Could not parse '' as a timestamp
但如果我上传此文件:
,
一切正常,因为逗号周围有2个空值。
您可以转换所有文件,删除空字符串,或将这些列作为字符串导入BigQuery,然后在BigQuery中运行从字符串到时间戳的ETL。
答案 1 :(得分:1)
我有类似的问题
错误是
- File: 2 / Line:9940 / Field:13: Day 0-0-0 does not exist for
timestamp: 0000-00-00 00:00:00
"9718470";"2769586jfghjkdf";"2015-08-03 15:57:28";"2015-08-03 16:10:10";"479";"128833308";"May 2015";"1461782";"ab_20150616";"1130567689";"69466";"emailid@hotmail.com";"0000-00-00 00:00:00";"2015-08-03 23:53:44"
第13个字段是我的BigQuery Schema中的TIMESTAMP,我发送了" 0000-00-00 00:00:00" 。 Big Query不接受" 0000-00-00 00:00:00"。
要解决这个问题,我发送
"9718470";"2769586jfghjkdf";"2015-08-03 15:57:28";"2015-08-03 16:10:10";"479";"128833308";"May 2015";"1461782";"ab_20150616";"1130567689";"69466";"emailid@hotmail.com";;"2015-08-03 23:53:44"
总之,你必须发送" someValue&#34 ;;;" someOtherValue" 而不是 " someValue";" 0000-00-00 00:00:00&#34 ;;" someOtherValue或" someValue&#34 ;;"" ;" someOtherValue
请注意,我正在使用;作为分隔符。