Postgres从1000开始表ID

时间:2014-06-26 00:43:06

标签: sql postgresql

在您将此标记重复之前。我在另一个主题上找到了这个答案,并且难以使其发挥作用。

从psql我看到我的表:

\d people

表:

  

列|输入|修饰符
  --------------- + ---------------------------------- + ------------------------------------------------- ----------------------
  id |整数|不是默认值   NEXTVAL( 'people_id_seq' :: regclass的)

我试过的代码似乎什么也没做......

ALTER SEQUENCE people_id_seq RESTART 1000

如何让主键从1000开始?

2 个答案:

答案 0 :(得分:2)

以下查询会将序列值设置为999.下次访问序列时,您将获得1000.

SELECT setval('people_id_seq', 999);

<强>参考

Sequence Manipulation Functions on PostgreSQL Manual

答案 1 :(得分:1)

你为什么要宣布自己的身份?

我的意思是,我会做以下事情:

创建表人( id serial, 约束primaryKeyID主键(id));

现在如果你想从1000开始你的序列,你的alter query就可以了。

更改序列people_id_seq restart 1000