将列表插入表中时更新主键

时间:2018-12-18 20:33:24

标签: postgresql

我有一个表,该表应包含数据库中其他表的唯一值列表(“ activityid”)。我可以生成唯一值列表,但是当我尝试将其添加到表中(开头是空的)时,PostgreSQL返回错误:

ERROR:  null value in column "id" violates not-null constraint

这是我的SQL查询:

INSERT INTO catalog_activityid(activityid1)
SELECT distinct activityid from
(select activityid from d115ablackboxes
union select activityid from d115afilecabinets
union select activityid from d115arolledmaps
union select activityid from rockboxes1040)
as activityid

如何让SQL与INSERT命令同时在“ id”列中添加值?或者,还有其他解决方法吗?

1 个答案:

答案 0 :(得分:1)

如果您将“ id”定义为序列号,则应自动为其分配递增的值。

https://www.postgresql.org/docs/8.1/datatype.html 看到bigserial或序列号