Я пытаюсь обновить представление в 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?
Ваше здоровье
update_table
для изменения атрибутов представления. Где ты видишьupdate_view
? - person Elliott Brossard   schedule 16.09.2018CREATE OR REPLACE VIEW
, если у вас возникли проблемы с API. - person Elliott Brossard   schedule 17.09.2018