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

PostgreSQL版本:9.6

我有一个表xyz,其中有列a integerb integerc textd 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,4).

guyouyan 回答:如何仅从PostgreSQL中的CSV导入特定列

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

alter table xyz alter c set default '';

之后,复制命令将成功。

本文链接:https://www.f2er.com/3004854.html

大家都在问