📅  最后修改于: 2023-12-03 15:07:45.955000             🧑  作者: Mango
很多时候我们需要清空一个 PostgreSQL 数据库中的某些表,但是有时候我们需要重置表的自增 id。下面的 SQL 代码会帮助你完成这个任务。
TRUNCATE TABLE table_name RESTART IDENTITY;
上述代码将会截断 table_name
表并重置它的自增 id。
如果你不小心执行了上述命令,你可以使用以下命令来撤销截断表操作:
ALTER TABLE table_name ALTER COLUMN id SET DEFAULT nextval('table_name_id_seq');
这将会把自增 id 设置为其默认值,并将会以同样的方式继续递增。
TRUNCATE
命令不支持 WHERE
条件,因此执行前请谨慎。TRUNCATE
命令是一个快速的清空表的方式,但是它不会触发任何 DELETE
触发器。