我尝试将查询中的数据附加到bigquery表。
职位编号job_i9DOuqwZw4ZR2d509kOMaEUVm1Y
错误:写入Bigquery时作业失败。无效:非法架构更新。无法在null
添加字段(字段:debug_data)
我复制并粘贴上面jon中执行的查询,在web控制台中运行并选择要追加的相同dest表,它可以工作。
答案 0 :(得分:5)
您列出的作业是尝试将查询结果附加到表中。该查询有一个名为' debug_data'的字段。您要追加的表格没有该字段。此行为是设计使然,以防止人们意外修改其表的架构。
您可以运行tables.update()或tables.patch()操作来修改表架构以添加此列(请参阅此处使用bq的示例:Bigquery add columns to table schema),然后您就可以了能够成功运行此查询。
或者,您可以使用truncate而不是append作为查询作业中的写入处置;这会覆盖表格,这样做会允许架构更改。
答案 1 :(得分:0)
有关如何使bigquery在执行附加操作时自动将新字段添加到架构的信息,请参见this post。
python中的代码是:
job_config.schema_update_options = ['ALLOW_FIELD_ADDITION']