我尝试使用gcloud python library上传几行数据,但没有成功。以下是取自latest documentation
的示例代码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字段也不起作用,我也没有得到任何错误结果,这使得调试变得困难。什么提示我做错了什么?
答案 0 :(得分:1)
明确声明表格中的架构有助于解决此问题。即,不应使用table = dataset.table('test_table')
,而应使用以下内容:
left = SchemaField('left', 'STRING', 'REQUIRED')
right = SchemaField('right', 'STRING', 'REQUIRED')
table = dataset.table('test_table', schema=[left, right])
我在Github上就此发了一个问题。如果感兴趣,你可以read more here。