postgres 如何重置或更新 table 的索引(序列)

postgres how to reset or update index(sequence) of table

我在 table 中删除了 2000 行,然后我插入了相同的 2000 条记录,但它们的索引(id 自动递增字段)从 2001 年开始, 现在我想将那些索引 2001 - 4000 更新为 1-2000

要更新您的 ID 运行,请执行以下命令。

UPDATE table SET id = id - 2000;

这将更新您 table 中记录的 ID,然后您需要更新 table 的序列

ALTER SEQUENCE table_id_seq RESTART WITH 2001;

这将允许您插入 ID 为 2001

的数据

另一种方法,删除table中的所有记录并更新table的序列并重新插入数据。

希望这会有所帮助。