即使使用强制命令,COPY INTO 雪花表也不加载数据

时间:2021-06-24 08:27:43

标签: snowflake-cloud-data-platform

我正在将数据从 s3 存储桶加载到雪花表并使用复制到命令。

COPY INTO DB.SCHEMA.TABLE
FROM s3://test1/test.tsv
STORAGE_INTEGRATION = "TEST_S3"
FILE_FORMAT = (type = "CSV" field_delimiter = ' ' skip_header = 0)
ON_ERROR = "CONTINUE"
;

第一次成功运行并加载了数据。当尝试重新运行复制命令时,它无法加载数据并返回 - 复制已处理 0 个文件。

然后检查了文档并了解到我应该 FORCE=TRUE 但仍然得到相同的消息 - 执行复制时处理了 0 个文件。

COPY INTO DB.SCHEMA.TABLE
FROM s3://test1/test.tsv
STORAGE_INTEGRATION = "TEST_S3"
FILE_FORMAT = (type = "CSV" field_delimiter = ' ' skip_header = 0)
ON_ERROR = "CONTINUE"
FORCE = TRUE
;

无法理解我做错了什么。有人知道吗?

2 个答案:

答案 0 :(得分:1)

是的,我现在明白了。

以上代码都删除了外部存储中复制的文件,并且不允许我们在文件不存在的情况下重新复制。

因此,如果您不想在复制后删除文件,请添加命令 PURGE=FALSE 并重新运行复制到命令(FORCE=TRUE)工作并复制记录。

答案 1 :(得分:0)

我相信它应该是 ON_ERROR = CONTINUE(不带引号)。也许这会阻止 Snowflake 读取 FORCE 选项?

相关问题