我从 Big Query GUI 创建了一个空表,其中包含table_name
. 后来我试图通过R
使用bigrquery
包将数据附加到现有的空表中。
我试过下面的代码,
upload_job <- insert_upload_job(project = "project_id",
dataset = "dataset_id",
table = "table_name",
values = values_table,
write_disposition = "WRITE_APPEND")
wait_for(upload_job)
但它给我一个错误说,
提供的架构与表不匹配。字段 alpha 已将模式从 REQUIRED 更改为 NULLABLE [无效]
我的表没有任何NULL
或NA
在提到的列中,并且架构中的 data_types 与values_table
.
我尝试不直接从 R 创建模式上传。当我这样做时,它会自动将模式转换为nullable
我不想要的模式。
我还尝试通过将write_dispostion = "WRITE_TRUNCATE"
which 也转换为nullable
.
有人可以解释幕后发生的事情以及在不重新创建架构的情况下上传数据的最佳方式是什么。
注意:有一个明显的拼写错误。早些时候它被wirte_disposition
编辑为write_disposition
.