问题描述
我有一个带有字符串值和 JSON 条目的 CSV 文件格式数据。例如 -
message_id | 状态 | user_detail | 日期 |
---|---|---|---|
a123bxe | 成功 | {user_name:'jim',full_name:'Jim Mathews'} | 2021-07-28 |
b245apl | 成功 | {user_name: '\n153674@dewbbe',full_name:'Dev Webbe'} | 2021-07-28 |
文件有 |作为字段分隔符\n 作为记录分隔符。由于 \n 传入数据值,sNowflake 将其余数据视为新记录,并尝试将其余数据输入表下,最终由于数据类型不匹配而出错。
这是我使用的文件格式:-
FILE_FORMAT = COMPRESSION = ‘AUTO’
FIELD_DELIMITER = ‘|’
RECORD_DELIMITER = ‘\n’
SKIP_HEADER = 0
ESCAPE_UNENCLOSED_FIELD='\n'
VALIDATE_UTF8 = 真
EMPTY_FIELD_AS_NULL = 真
TRIM_SPACE = 真
ERROR_ON_COLUMN_COUNT_MISMATCH = FALSE
NULL_IF = (‘NULL’,‘null’,‘None’,‘NONE’,"""")
我应该如何转义 \n 作为数据值的一部分?
解决方法
尝试将 FIELD_OPTIONALLY_ENCLOSED_BY 参数与单引号一起使用