我试图使用bigquery REST API获取表及其last_modified_date的列表。 在bigquery API资源管理器中,我正确地获取了所有字段,但是当我使用Python代码中的api时,它会在修改日期返回“None”。 这是python中为此编写的代码
from google.cloud import bigquery
client = bigquery.Client(project='temp')
datasets = list(client.list_datasets())
for dataset in datasets:
print dataset.dataset_id
for dataset in datasets:
for table in dataset.list_tables():
print table.table_id
print table.created
print table.modified
在这段代码中,我正确地创建了日期,但所有表的修改日期都是“无”。
不太确定您使用的是哪个版本的API,但我怀疑latest versions没有使用dataset.list_tables()
方法。
尽管如此,这是获取最后修改字段的一种方法,看看这是否适合您(或者让您了解如何获取此数据):
from google.cloud import bigquery
client = bigquery.Client.from_service_account_json('/key.json')
dataset_list = list(client.list_datasets())
for dataset_item in dataset_list:
dataset = client.get_dataset(dataset_item.reference)
tables_list = list(client.list_tables(dataset))
for table_item in tables_list:
table = client.get_table(table_item.reference)
print "Table {} last modified: {}".format(
table.table_id, table.modified)