【发布时间】:2018-05-06 12:54:29
【问题描述】:
我有一个简单的函数来判断一个表是否存在:
def check_users_usersmetadata_existence():
"""
Checks if the table Prod_UserUserMetadata exists
"""
app_id = get_app_id()
bigquery_client = bigquery.Client(project=app_id)
dataset_ref = bigquery_client.dataset('Backup')
table_ref = dataset_ref.table('Prod_UserUserMetadata')
try:
table = bigquery_client.get_table(table_ref)
if table:
print('Table {}\'s existence sucessfully proved!'.format(table_ref))
return True
except HttpError as error:
raise
print('Whoops! Table {} doesn\'t exist here! Ref: {}'.format(table_ref, error.resp.status))
return False
问题是,它会在table = bigquery_client.get_table(table_ref) 这一行抛出 404,这没关系,因为该表不应该存在。但它不会继续处理脚本的其余部分。我试图在 try except 包装器中解析它,但它不起作用。我将如何解析这个?
【问题讨论】: