【发布时间】:2020-12-09 04:14:59
【问题描述】:
我的问题:
如何将我的副本构造成语句,以便我的文件能够正确解析和加载?谢谢!
问题:
我有一个 csv 文件,我需要从 Snowflake 中的命名阶段解析并复制到一个表中。
文件如下所示:
ID, Name, Job Title,Company Name, Email Address, Phone Number
5244, Ted Jones, Manager, Quality Comms, tj@email.com,555-630-1277
5246, Talim Jones,""P-Boss"" of the world, Quality Comms, taj@email.com,555-630-127
5247, Jordy Jax,,"M & G Services.",jj@services.com, 616-268-1546
我的代码:
COPY INTO DB.SCHEMA.TABLE_NAME
(
ID,
FULL_NAME,
JOB_TITLE,
EMAIL_ADDRESS
)
FROM
(
SELECT $1::NUMBER AS ID,
$2 AS FULL_NAME,
$3 AS JOB_TITLE,
$5 AS EMAIL_ADDRESS
FROM @STAGE_NAME)
--SNOWFLAKE DOES NOT SUPPORT UTF 16 OR 32 SO HAVING REPLACE INVALID UTF 8 CHARACTERS
FILE_FORMAT = (TYPE = 'CSV', RECORD_DELIMITER = '\n', FIELD_DELIMITER = ',', SKIP_HEADER = 1,FIELD_OPTIONALLY_ENCLOSED_BY = '"',TRIM_SPACE = TRUE,REPLACE_INVALID_CHARACTERS = TRUE)
ON_ERROR = CONTINUE
--COPY A FILE INTO A TABLE EVEN IF IT HAS ALREADY BEEN LOADED INTO THE TABLE
FORCE = TRUE
我的错误信息:
Found character 'P' instead of field delimiter ','
我已经尝试过:
我尝试了很多东西,最值得注意的是:
- 我试图在我的职位名称选择语句中转义双引号。
- 我尝试删除 FIELD_OPTIONALLY_ENCLOSED_BY = '"' 参数,只使用 ESCAPE = '"' 没有成功。
【问题讨论】:
-
你想在你的决赛桌有“P-Boss or P-Boss”吗?
-
P-Boss 是理想的选择,我的主要目标是让字段正确解析到正确的列中。
标签: snowflake-cloud-data-platform