1

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)]

だから私は空のフィールドを追加します。ドキュメントでは、アップロードされた行は「タプルのリスト」である必要があると書かれていますが、それは機能していないようです。私のスキーマには 2 つの文字列フィールドがあります。Unicode フィールドも機能せず、エラー結果も返されないため、デバッグが困難です。私が間違っていることのヒントはありますか?

4

1 に答える 1

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で問題を起こしていました。興味があれば、ここでもっと読むことができます。

于 2016-09-30T20:47:34.140 に答える