我正在使用 Google Cloud Functions 连接到 Google Bigquery 数据库并更新一些行。云函数是使用Python 3编写的。
当我通过函数运行更新 dml 时,我需要帮助弄清楚如何获取结果消息或更新/更改的行数。有任何想法吗?
from google.cloud import bigquery
def my_update_function(context,data):
BQ = bigquery.Client()
query_job = BQ.query("Update table set etc...")
rows = query_job.result()
return (rows)
我知道行总是作为 _emptyrowiterator 对象返回。我可以通过什么方式获得结果或结果消息?文档说我必须从 bigquery 作业方法中获取它。但似乎无法弄清楚。
我认为你正在寻找QueryJob.num_dml_affected_rows
。它包含受更新或任何其他 DML 语句影响的行数。如果您只是将其粘贴到您的代码中而不是rows
in return
声明你将得到 int 类型的数字,或者你可以创建一些按摩,例如:
return("Number of updated rows: " + str(job_query.num_dml_affected_rows))
我希望它会有所帮助:)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)