【发布时间】:2022-02-10 04:39:00
【问题描述】:
我正在尝试从舞台导入 csv 文件,但出现以下错误
找到字符 '}' 而不是字段分隔符 ';'
我在 csv 中的数据。看起来像
0911220;NULL;{{lorem.ipsum}};{{bla.bla}}
我不知道该怎么办。我没有任何与文件格式中设置的花括号相关的内容。我应该在那里改变一些东西吗?
文件格式为:
ALTER FILE FORMAT "RAW"."CRM".CSV_SEMICOLON_QUOTES_HEADER
SET
COMPRESSION = 'AUTO'
FIELD_DELIMITER = ';'
RECORD_DELIMITER = '\n'
SKIP_HEADER = 1
FIELD_OPTIONALLY_ENCLOSED_BY = '\042'
TRIM_SPACE = FALSE
ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE
ESCAPE = 'NONE'
ESCAPE_UNENCLOSED_FIELD = 'NONE'
DATE_FORMAT = 'AUTO'
TIMESTAMP_FORMAT = 'AUTO'
NULL_IF = ('\\N');
及导入方法:
copy into "..." ( list of columns )
FROM @stage_name files = ( 'file.zip') file_format = (
format_name=CSV_SEMICOLON_QUOTES_HEADER compression=GZIP);
【问题讨论】:
-
你的文件格式的定义是什么?您是如何将文件加载到阶段的,以及您是如何尝试将数据从阶段导入到表的?您能否分享更多关于您尝试过的命令的详细信息?
-
嗨。这是我的文件格式定义 ALTER FILE FORMAT "RAW"."CRM".CSV_SEMICOLON_QUOTES_HEADER2 SET COMPRESSION = 'AUTO' FIELD_DELIMITER = ';' RECORD_DELIMITER = '\n' SKIP_HEADER = 1 FIELD_OPTIONALLY_ENCLOSED_BY = '\042' TRIM_SPACE = FALSE ERROR_ON_COLUMN_COUNT_MISMATCH = TRUE ESCAPE = 'NONE' ESCAPE_UNENCLOSED_FIELD = 'NONE' DATE_FORMAT = 'AUTO' TIMESTAMP_FORMAT = '\\'AUTO' NULL ;另外我添加了“compression=GZIP”,因为文件是 GZIP 我尝试通过复制导入数据。数据由 Visual Studio 中的 Amazon S3 连接管理器加载
-
以及导入复制到“...”(列列表)的方法 FROM @stage_name files = ('file.zip') file_format = (format_name=CSV_SEMICOLON_QUOTES_HEADER compression=GZIP);
-
请将所有这些信息添加到您的问题中,以便将所有信息集中在一个地方,而不是分散在各个 cmets 中
-
使用您的示例数据和文件格式的DDL,我能够成功加载数据,因此无法重现。您能否提供从头到尾的完整脚本来重现您的问题?即创建阶段、文件格式、表格以及如何将文件放入阶段等的语句。基本上是一个独立的脚本,我们可以从我们端运行以进行测试。
标签: csv snowflake-cloud-data-platform