簡體   English   中英

雪花數據庫:在 COPY INTO 語句中使用 VALIDATION_MODE 從外部階段加載 JSON 文件

[英]Snowflake Database : Loading JSON file from external stage with VALIDATION_MODE in COPY INTO statement

加載CSV 時,可以選擇將 VALIDATION_MODE 與 COPY INTO 命令一起使用。 這將為我們提供該 csv 中所有記錄中的錯誤列表。

COPY INTO "PUBLIC"."TableCSV"
FROM @my_csv_stage
FILES = ('TableCSV.csv')
VALIDATION_MODE = 'RETURN_ERRORS';

加載JSON 時,所有這些都不起作用:

COPY INTO "PUBLIC"."TableJSON1"
FROM @my_json_stage
FILES = ('TableJSON1.json')
MATCH_BY_COLUMN_NAME = CASE_SENSITIVE
VALIDATION_MODE = 'RETURN_ERRORS';
COPY INTO "PUBLIC"."TableJSON2"
FROM (
    SELECT $1:"col1" :: VARCHAR
          ,$1:"col2" :: VARCHAR
      FROM @my_json_stage 
  )
FILES = ('TableJSON2.json')
VALIDATION_MODE = 'RETURN_ERRORS';
COPY INTO "PUBLIC"."TableJSON3"
FROM (
    SELECT $1:"col1" :: VARCHAR
          ,$1:"col2" :: VARCHAR
      FROM @my_json_stage 
  )
FILES = ('TableJSON3.json');
SELECT * FROM TABLE(VALIDATE("TableJSON3", job_id => '_last'));

我可以看到這個雪花頁面上的第一個示例具有我想要的 JSON 確切表,但是當我執行時

SELECT * FROM TABLE(VALIDATE("TableJSON3", job_id => '_last'));

它給了我這個錯誤:

SQL compilation error: JSON/XML/AVRO file format can produce one and only one column of type variant or object or array. Use CSV file format if you want to load more than one column.

這是 Snowflake 中的一個已知問題。 工程團隊已意識到該問題,他們正在積極努力解決問題。 目前在修復時間表上沒有 ETA。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM