如何指定 postgres 表的主键种子?

Sta*_*ers 5 database postgresql

我有一个 postgres 表,其中包含数据,其中主键已由注入数据的代码设置。假设主键是 0..49。

如何指示 postgres 在下一次插入的主键列上从 50 开始?目前,所有没有设置主键的插入都会导致重复的 ID 问题,因为它从 0 开始(我假设)。

Sha*_*mps 4

您需要做的就是创建一个从 50 开始的序列,并将主键列的默认值设置为序列的下一个值

这是代码

CREATE SEQUENCE seq_name START 50;
ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT nextval(seq_name);
Run Code Online (Sandbox Code Playgroud)