Snowflake - 从 s3 导入时主键列为空,看到 NULL 导致不可为空的列

Snowflake - Primary key column is empty when importing from s3 seeing NULL result in a non-nullable column

我有一个文件,其中包含 id 列(这是 table 我尝试加载到的 PK)以及开始和结束日期列。即使文件为空且不包含任何 ID,我们也会在文件中附加开始和结束日期。

所以当我尝试将 s3 文件加载到 snowflake 时,我看到:

NULL result in a non-nullable column

我也 运行 对 table 的 alter 语句删除了主键,但我仍然看到这个错误

我要加载到 snowflake 的文件:

id start_date end_date
2022-01-01 2022-01-02

我用来从 s3 加载到雪花的命令:

COPY INTO my_table
FROM (
    SELECT id, start_date, end_date
    FROM @s3_location/ids.csv
)
file_format = (format_name = 'file format')


TRUNCATECOLUMNS = FALSE
FORCE = FALSE

听起来您想允许您的 ID 列为空。

ALTER TABLE my_table ALTER COLUMN id DROP NOT NULL;

如果是这样,您也将希望停止将其视为主键。

ALTER TABLE my_table DROP PRIMARY KEY;