如何仅从PostgreSQL中的CSV导入特定列

问题描述 投票:0回答:1

PostgreSQL版本:9.6

我有一个具有列xyza integerb integerc text的表d integer

c列具有非null约束。

我有一个看起来像这样的CSV:

foo.csv

1,4
2,5
3,7

如何通过导入上面的CSV来仅更新列ad

我尝试了COPY xyz (a,d) FROM '/foo.csv' DELIMITER ',';,但给了我一个错误

ERROR: null value in column "c" violates not-null constraint DETAIL: Failing row contains (1, null, null, 4).

postgresql postgresql-9.6
1个回答
0
投票

通常,not null列应定义一个默认值。您可以为现有列定义默认值,例如

alter table xyz alter c set default '';

此后,复制命令将成功。

© www.soinside.com 2019 - 2024. All rights reserved.