Я пытаюсь обновить представление в bigquery через python. Я смог создать представление, используя следующий подход:
def createView(client):
viewDataset = 'dataset'
viewName = 'name'
view_ref = client.dataset(viewDataset).table(viewName)
view = bigquery.Table(view_ref)
view_sql = """
select * from '{}.{}' where thing = 2
"""".format(viewDataSet, viewName)
view.view_query = view_sql
client.create_table(view)
(Код для пояснения)
Это работало нормально и создавало представление. Затем я хотел запустить функцию, которая обновляет определение представления. Я повторно использовал тот же код, и он потерпел неудачу с ошибкой, говоря, что представление уже существует - это имеет смысл. Затем я последовал этому примеру здесь;
https://cloud.google.com/bigquery/docs/managing-views
Использование кода для обновления SQL-запроса представлений. В основном я поменял линию
client.create_table(view)
для
client.update_table(view)
Я получаю сообщение об ошибке, говоря, что я не добавил атрибут fields ... Поскольку я являюсь представлением, я бы не стал этого делать.
Может кто-нибудь сказать мне правильный способ использовать Python для обновления существующего представления BigQuery?
Приветствия