首页 > 解决方案 > COPY INTO 语句未将文件类型生成为 .csv - Snowflake,S3

问题描述

我正在使用 COPY INTO 语句将数据从 Snowflake 复制到 S3。

这是代码:

copy into 's3://dev'
  from "TEST_DATABASE"."RAW_DATA"."TEMP_TABLE"
  credentials = (aws_key_id='***' aws_secret_key='***')
  OVERWRITE = TRUE
  file_format = (type=csv compression='none')
  single=true
  max_file_size=4900000000; 

数据被复制,但我没有得到.csv扩展。

我得到data的是文件名,而不是data.csv.

我在这里做错了什么?任何建议表示赞赏。

标签: amazon-web-servicesamazon-s3snowflake-cloud-data-platform

解决方案


对于单个文件,您只需指定包含扩展名的完整文件名:

copy into 's3://dev/MyFileName.csv'
  from "TEST_DATABASE"."RAW_DATA"."TEMP_TABLE"
  credentials = (aws_key_id='***' aws_secret_key='***')
  OVERWRITE = TRUE
  file_format = (type=csv compression='none')
  single=true
  max_file_size=4900000000; 

如果不指定single=true选项,则需要指定 FILE_EXTENSION 选项:

copy into 's3://dev'
  from "TEST_DATABASE"."RAW_DATA"."TEMP_TABLE"
  credentials = (aws_key_id='***' aws_secret_key='***')
  OVERWRITE = TRUE
  file_format = (type=csv compression='none')
  FILE_EXTENSION = 'csv'
  max_file_size=4900000000; 

推荐阅读