如何解决Google云端-BiqQuery,无效的架构更新字段的类型从“ INTEGER”更改为“ STRING”
在GCP中,我的query
使用python选择一些要插入表BQ_table
中的数据。
query
产生2个字段/列:一个字符串和一个整数。
BQ_table
跟在schema
之后。
schema = [ bigquery.SchemaField("name","STRING",mode="NULLABLE"),bigquery.SchemaField("age","INTEGER",mode="NULLABLE")
]
config = bigquery.QueryJobConfig(destination= BQ_table,autodetect=True,schema=schema)
query_job = self._client.query(query,job_config=config)
que
我的问题是,如何在当前项目中列出/显示所有可能的数据集和表格?
我找不到正确的gcloud
| gsutil
命令。
可以插入数据,类型从age
到STRING
,INTEGER
,但是我想知道将数字数据插入表中会丢失什么。
错误是:
Google Cloud-BiqQuery,无效的架构更新。领域已经改变 从INTEGER到STRING
解决方法
可以从INFORMATION_SCHEMA.SCHEMATA中查询Google BigQuery中所有数据集的列表:
SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;
可以从INFORMATION_SCHEMA.TABLES中查询Google BigQuery中的表列表:
-- Returns metadata for tables in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.TABLES;
-- Returns metadata for tables in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.TABLES;
要将STRING插入INTEGER,请尝试首先使用CAST or SAFE_CAST在查询中明确将其转换:
SELECT CAST("123" AS INT64);
SELECT SAFE_CAST("apple" AS INT64);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。