
[英]Snowflake Copy Into rejecting file without error in Python Snowflake Connector
[英]Snowflake: Error loading a LOCAL file that has some ARRAY fields
加載包含一些 ARRAY 字段的本地文件時出現錯誤。 對於所有字段都是字符串的源文件,我沒有得到這個。
創建表:
CREATE TABLE "TESTDB"."LAYER2"."CREW" ("TCONST" STRING, "DIRECTORS" ARRAY, "WRITERS" ARRAY);
數據文件:
tconst directors writers
tt0000001 nm0005690 \N
tt0000002 nm0721526 \N
tt0000003 nm0721526 \N
tt0000004 nm0721526 \N
tt0000005 nm0005690 \N
tt0000006 nm0617588 nm0617588
tt0000007 nm0374658,nm0005690 \N
tt0000008 nm0719756 nm0331003,nm0759866,nm0173952,nm0719756,nm0816458
SQL
PUT file://<file_path>/title.crew_1.tsv @TEST_2/ui1770650179898
COPY INTO "TESTDB"."LAYER2"."TEST_2" FROM @/ui1770650179898
FILE_FORMAT = '"TESTDB"."LAYER1"."TSV"' ON_ERROR =
'ABORT_STATEMENT' PURGE = TRUE;
錯誤信息:
無法將文件復制到表中。 解析 JSON 時出錯:nm0005690 文件 '@TEST_2/ui1770650179898/sample.samplefile.tsv',第 2 行,字符 11 第 1 行,列“TEST_2”[“DIRECTORS”:2] 如果您想在遇到錯誤時繼續加載,對 ON_ERROR 選項使用其他值,例如“SKIP_FILE”或“CONTINUE”。 有關加載選項的更多信息,請在 SQL 客戶端中運行“info loading_data”。
我覺得這是一個簡單的答案 - 對各種方法進行了故障排除但沒有成功,並且在 web 上找不到任何東西來為我指明正確的方向。
任何幫助將不勝感激。
您需要將字符串轉換為 arrays。 我假設分隔符是制表符:
create file format csvtab type=csv field_delimiter = '\t' skip_header=1;
COPY INTO "CREW" FROM
(select $1, SPLIT($2,','), SPLIT($3,',') from @mystage)
FILE_FORMAT = csvtab ON_ERROR = 'ABORT_STATEMENT' ;
select * from "CREW";
+-----------+---------------------------+---------------------------------------------------------------+
| TCONST | DIRECTORS | WRITERS |
+-----------+---------------------------+---------------------------------------------------------------+
| tt0000001 | ["nm0005690"] | |
| tt0000002 | ["nm0721526"] | |
| tt0000003 | ["nm0721526"] | |
| tt0000004 | ["nm0721526"] | |
| tt0000005 | ["nm0005690"] | |
| tt0000006 | ["nm0617588"] | ["nm0617588"] |
| tt0000007 | ["nm0374658","nm0005690"] | |
| tt0000008 | ["nm0719756"] | ["nm0331003","nm0759866","nm0173952","nm0719756","nm0816458"] |
+-----------+---------------------------+---------------------------------------------------------------+
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.