Я пытаюсь скопировать данные в таблицу Redshift с помощью столбца IDENTITY. Данные файла имеют: Данные из UNLOAD той же структурной таблицы, что и цель с столбцом IDENTIFY + Дополнительные данные, где столбец IDENTITY имеет значение NULL (снова в данных файла).
Эти данные файла копируются с помощью команды COPY с опция EXPLICIT_IDS.
И она не работает следующим образом:
При создании таблицы как:
CREATE TABLE dw.table_wth_id
(
id_col BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL,
another_col varchar(48)
);
- Команда COPY:
copy dw.territory_varicent4
from 's3://rhntest/nvaricent2cols/'
access_key_id 'erased'
secret_access_key 'erased'
session_token 'erased'
DELIMITER '\001'
EXPLICIT_IDS
;
COPY result: Missing data for not-null field
В случае, когда данные файла имеют дополнительные данные, где значения в позиции столбца идентификаторов являются отрицательными, например, -3, -2. Они являются частью исходной таблицы со столбцом идентификаторов, команда COPY завершается с ошибкой: «Недопустимое значение столбца идентификаторов (ниже начального значения)»
Есть ли хорошая документация по загрузке идентификаторов EXPLICIT в этом ситуация: 1) КОПИРОВАНИЕ с данными, имеющими NULLS, в позиции столбца IDENTITY 2) КОПИРОВАНИЕ с данными, имеющими отрицательные числа в позиции столбца IDENTITY
Спасибо!