我们正在尝试将数据加载到BigQuery中,但是双引号引起了问题。
根据this question on SO,通过设置参数configuration.load.quote =“”可以忽略双引号。给出了如何从命令行执行此操作的示例。
我们尝试添加job_config.load.quote =“”,但收到一个错误消息,即job_config没有名为load的方法。
使用Python时如何设置load.quote参数?
到目前为止,这是我们的代码:
dataset_id = 'our_dataset_id'
dataset_ref = bigquery_client.dataset(dataset_id)
job_config = bigquery.LoadJobConfig()
job_config.skip_leading_rows = 0
job_config.source_format = bigquery.SourceFormat.CSV
uri = 'gs://our/bucket/path.csv'
load_job = bigquery_client.load_table_from_uri(
uri,
dataset_ref.table('our_destination_table'),
job_config=job_config
)
print('Starting job {}'.format(load_job.job_id))
load_job.result()
答案 0 :(得分:1)
我们发现命令行命令和Python API之间的参数不一致,这就是它们失败的原因。
添加此行:
job_config.quote_character = ""
以下是作业配置的Python参数的链接:https://googleapis.github.io/google-cloud-python/latest/bigquery/generated/google.cloud.bigquery.job.LoadJobConfig.html#google.cloud.bigquery.job.LoadJobConfig.quote_character