我想强制一个表的自动增量字段的一些值,我尝试了这样:
ALTER TABLE product AUTO_INCREMENT = 1453
AND
ALTER SEQUENCE product RESTART WITH 1453;
ERROR: relation "your_sequence_name" does not exist
我有一个表产品与Id和名称字段
我想强制一个表的自动增量字段的一些值,我尝试了这样:
ALTER TABLE product AUTO_INCREMENT = 1453
AND
ALTER SEQUENCE product RESTART WITH 1453;
ERROR: relation "your_sequence_name" does not exist
我有一个表产品与Id和名称字段
当前回答
注意,如果表名带有'_',它将在序列名中被删除。
例如,表名:user_tokens列:id 序列名称:usertokens_id_seq
其他回答
如果你想从GUI重置自动增量,那么按照这个步骤。
进入数据库 点击公共 在表格列表页面,你可以看到像“表”,“视图”,“序列”这样的标签。 点击序列 当你点击“序列”,你可以看到所有的序列列表,点击任何你想重置 之后,你可以看到多种选择,如“改变”,“设置值”,“重新启动”,“重置”等… 然后点击重置,然后添加一个新行。
下面的命令会自动执行此操作:这也会删除表中的所有数据。所以要小心。
TRUNCATE TABLE someTable RESTART IDENTITY;
注意,如果表名带有'_',它将在序列名中被删除。
例如,表名:user_tokens列:id 序列名称:usertokens_id_seq
如果表格是这样的
bigint NOT NULL GENERATED ALWAYS AS IDENTITY ( INCREMENT 1 START 0)
插入0-9范围内的记录后,会导致下次插入时发生冲突,因此重置START:
ALTER TABLE ... ALTER COLUMN ... RESTART WITH 10;
ALTER SEQUENCE public."Table_Id_seq"
RESTART 50;
这个问题对我很管用。Postgresql版本14