PostgreSQL duplicate key violates unique constraint

PostgreSQL 大约 390 字

错误原因

当前序列的值小于了目前表中的值。

查看序列

select * from post_id_seq;

输出

 last_value | log_cnt | is_called 
------------+---------+-----------
      11563 |      30 | t
(1 row)

查看 id 最大值

select max(id) from post;

解决方法

序列post_id_seq为表post的字段id的默认nextval(),设置当前的序列post_id_seq为目前表post中最大的id值。如:post最大值为10,则下次nextval返回11

注意:select max(id) ...必须用括号括起来

select setval('post_id_seq', (select max(id) from post));
阅读 188 · 发布于 2020-12-15

————        END        ————

扫描下方二维码关注公众号和小程序↓↓↓

扫描二维码关注我
昵称:
随便看看 换一批