PostGresql更改自增ID值

  • PostGresql更改自增ID值已关闭评论
  • 60 views
  • A+
所属分类:Linux

不知道你会不会遇到类似这样的情况,比如有一个orders(订单)表,我们把ID作为订单的ID,方便查询以及前端的显示,但是默认情况下,ID自增是从1开始的,为了前端显示的效果通常我们会将ID从6(N)位数开始,这个时候就需要修改默认的自增起始值了。

基于这种情况我们来做以下的演示操作。

环境

  • 运行postgresql

我这里通过docker的方式启动postgresql

默认的密码为zhiqiang.name

  • 版本

连接到postgres之后就会显示版本

创建建orders表

  • 创建orders表

通过serial创建自增ID,同时会创建属于这个表的自增序列,名为:orders_id_seq,并将ID字段设置为not null

  • 查看序列名称

使用命令:\d 表名

其中orders_id_seq就是序列的名称

  • 添加测试数据
  • 查看数据

上述的数据ID是从1开始,然后依次递增。

更改自增ID的起始值

如果setval的第三个值不添加为true,下一个ID值为100000,设置为true则表示设置的当前序列值+1

  • 插入数据
  • 查看

可以看到iPad的ID为100001

把当前最大的ID做为当前的ID自增起始值

参考文献

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin