django使用postgresql时提示主键冲突
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django使用postgresql时提示主键冲突相关的知识,希望对你有一定的参考价值。
在django使用postgresql数据库时,当你使用默认主键,但当你手动使用添加记录到相关数据库时(非insert操作,如使用navicate直接在表中复制粘贴记录),此时django在插入数据时,会提示主键冲突,这是因为postgresql的主键自增是建立在它内部机制工作的,你可以使用如下sql来获取或设置相关的自增ID序列: select nextval(‘表名_id_seq‘); #此操作会获取当前基于表中最大ID,并会设置ID+1
select currval(‘表名_id_seq‘); # 此操作会获取当前表自增ID的序列号
select setval(‘表名_id_seq‘, 3, true); #此操作会修改此表自增ID的起始ID值
以上是关于django使用postgresql时提示主键冲突的主要内容,如果未能解决你的问题,请参考以下文章
如何获取Django view.py来请求选定的帖子信息,如主键?
我的 Django 模型中的一个字段已经存在于 PostgreSQL 数据库中