Я пытаюсь загрузить несколько строк данных, используя gcloud python library и не получится. Вот пример кода, взятый из latest documentationЗагрузка пустых данных в Bigquery с использованием gcloud python
client = bigquery.Client()
dataset = client.dataset('test')
table = dataset.table("test_table")
rows = [("foo", "bar"), ("foo2", "bar2")]
result = table.insert_data(rows)
Если я запрашиваю последнюю загрузку я получаю:
[(None, None), (None, None)]
Так что я добавить пустые поля. В документации говорится, что загруженные строки должны быть «списком кортежей», но это, похоже, не работает. Моя схема имеет два строковых поля. Поля Unicode тоже не работают, и я тоже не получаю никаких ошибок, что затрудняет отладку. Любой намек, что я делаю неправильно?
Большое спасибо. Я закончил использование библиотеки GoogleApi (https://cloud.google.com/bigquery/docs/reference/v2/tabledata/insertAll), потому что у меня уже был словарь python, и мне не было смысла конвертировать это в задавать. Честно говоря, я не могу следовать подходу библиотеки gcloud для работы с наборами и схемой отдельно. Гораздо проще работать с dic, который объединяет два. Но, в любом случае, спасибо за решение. – crisscross
Мы получили сообщение об ошибке «Без модуля с именем bigquery.cloud.schema» для оператора импорта, который вы используете «из google.cloud.bigquery.schema import SchemaField». Эта библиотека существует или даже работает? – Praxiteles