[英]Check if bigquery query was successful or not in python
我正在嘗試測試我在 python 中創建或替換查詢的結果是否成功。 我編寫了如下代碼
PROJECT = project_id
DATASET = dataset
FINAL_TABLE = final_table
MAIN_TABLE = main_table
main_query = \
f'CREATE OR REPLACE TABLE `{PROJECT}.{DATASET}.{FINAL_TABLE}` AS \
(SELECT * FROM `{PROJECT}.{DATASET}.{MAIN_TABLE}` WHERE region="us")'
result = BQ.query(main_query)
if result.errors():
raise Exception('Table was not successfullly refreshed in bigQuery')
但是 result.errors() 語法不能正常工作。 嘗試實現這一目標的語法是什么?
result.errors()
語法不起作用,因為result.errors
實際上是QueryJob
的屬性而不是方法。 它是可能發生的錯誤的列表。 但是,如果沒有發生錯誤,則result.errors
為None
(另請參閱: errors
API 參考)。
因此,只需刪除括號,您的代碼就可以工作:
PROJECT = project_id
DATASET = dataset
FINAL_TABLE = final_table
MAIN_TABLE = main_table
main_query = \
f'CREATE OR REPLACE TABLE `{PROJECT}.{DATASET}.{FINAL_TABLE}` AS \
(SELECT * FROM `{PROJECT}.{DATASET}.{MAIN_TABLE}` WHERE region="us")'
result = BQ.query(main_query)
if result.errors:
raise Exception('Table was not successfullly refreshed in bigQuery')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.