将表中的列类型从布尔更新为字符串

Adi*_*hen 1 google-bigquery

我想在big-query中将类型为Boolean的空列更新为string.如何在不覆盖表格的情况下执行此操作并加载所有数据?

谢谢!

Pen*_*m10 5

您只能在表格末尾添加新字段.在旧列上,您可以选择将所需更改为可空.所以你想要的是不可能的,只有你添加一个新字段,或者你说完全覆盖表格.

UpdatePatch有两个表操作.

您需要使用" 更新"命令将新列添加到架构中.

重要的附注:

  1. 订单很重要.如果更改排序,它将看起来像一个不兼容的架构.
  2. 您只能在表格末尾添加新字段.在旧列上,您可以选择将所需更改为可空.
  3. 您无法向现有架构添加必填字段.
  4. 您无法删除旧字段,一旦指定了表的架构,您就无法在不先删除与其关联的所有数据的情况下更改它.如果要更改表的架构,则必须指定WRITE_TRUNCATE的writeDisposition.有关更多信息,请参阅作业资源.

以下是向模式添加字段的curl会话示例.适应Java应该相对容易.它从这里使用auth.py

使用Table.Update()时,必须再次包含完整的表模式.如果您没有提供完全匹配的架构,您可以获得:Provided Schema does not match Table.例如,我没有注意细节,在我的一个更新调用中,我没有包含旧字段created,但它失败了.