Первичный ключ AUTOINCREMENT для массовой загрузки снежинки - PullRequest
0 голосов
/ 20 февраля 2020

Я хотел бы загрузить данные в таблицу снежинок. Таблица снежинок имеет поле первичного ключа с AUTOINCREMENT.

Когда я пытался загрузить данные в снежинку без поля первичного ключа, я получил следующее сообщение об ошибке:

Копия ошибка с ошибкой: количество столбцов в файле (2) не соответствует значению соответствующей таблицы (3), используйте параметр формата файла error_on_column_count_mismatch = false, чтобы игнорировать эту ошибку

Кто-нибудь знает, могу ли я массовая загрузка данных в таблицу с первичным ключом AUTOINCREMENT?

knozawa

Ответы [ 2 ]

2 голосов
/ 20 февраля 2020

Документы имеют следующий пример, который предполагает, что это можно сделать: https://docs.snowflake.net/manuals/user-guide/data-load-transform.html#include -autoincrement-identity-columns-in-load-data

-- Omit the sequence column in the COPY statement
copy into mytable (col2, col3)
from (
  select $1, $2
  from @~/myfile.csv.gz t
)
;

Не могли бы вы попробовать этот синтаксис и посмотреть, работает ли он у вас?

0 голосов
/ 21 февраля 2020

Вы можете запросить файл сцены, используя формат файла для загрузки ваших данных. Я создал образец таблицы, как показано ниже. Автоинкремент первого набора столбцов:

- Создать целевую таблицу, создать или заменить таблицу Employee (автоинкремент empidnumber, начало 1, шаг 1, имя varchar, salary varchar);

Я поместил один пример файла в внутренний этап снежинки для загрузки данных в таблицу, и я запросил файл этапа, используя следующую команду Stage query, а затем выполнил следующую копию cmd:

copy в mytable (name, salary) из ( выберите $ 1, $ 2 из @ test / test.csv.gz);

И он загрузил таблицу с увеличенными значениями.

Большое спасибо, Срига

...