Ошибка вставки обнуляемых целых чисел в большие запросы с использованием Python API - PullRequest
0 голосов
/ 02 мая 2018

Я пытаюсь использовать API Python BigQuery для вставки данных в таблицы BigQuery. Более конкретно команда:

errors = client.insert_rows(table, rows[i*BATCH_SIZE:])

Столбец gas_used в моей таблице имеет тип данных INTEGER и имеет значение NULLABLE. Но я получаю следующую ошибку при вставке строк с нулевыми значениями в gas_used .

[{'index': 0, 'errors': [{u'debugInfo ': u' ', u areason': u'invalid ', u'message': u 'Невозможно преобразовать значение в целое число (плохо значение): ', u'location': u'gas_used '}]}]

Вот схема моей таблицы:

block_number,transaction_hash,type,trace_address,subtraces,transaction_position,from,to,value_wei,start_gas,input,gas_used,contract_address,output,error

и вот строка, которая выдает ошибку:

[('5000001', '0x2cfd7194877466e6adb87222e5876c4babf8bd59de299698fdce7f0a9a232932', 'call', '[]', '0', '11', '0x77cb68e788aa79640b8a613431cdb10d83208d47', '0x4b3ee0ac445d954f8bca68f9538d54e9633890f6', '349950000000000', '0', '0x', '', '', '', 'Out of gas')]

gas_used столбец является четвертым последним столбцом в схеме.

1 Ответ

0 голосов
/ 03 мая 2018

Как отмечал Уильям Фукс , я должен упомянуть нулевое целое число как None или 0. Я бы предпочел сохранить природу Integer Null, поэтому предпочел бы использовать `Nonè

Я прочитал эту запись и сейчас загружаю список словарей, удаляя ключи, которые являются нулевыми.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...