如何在没有自动增量的情况下创建主键?

Posted

技术标签:

【中文标题】如何在没有自动增量的情况下创建主键?【英文标题】:How do I make a primary key without auto-increment? 【发布时间】:2016-12-12 09:51:44 【问题描述】:

我一直在尝试创建一个具有主键的模型,但我不希望该主键自动递增。

我知道我每次都可以指定该值,但我希望该字段需要我指定它(希望由数据库和 django 强制执行),如果我忘记了会很快失败。

我可以在我的字段上说 auto_increment=False 似乎是合乎逻辑的,但该字段不支持 :(

【问题讨论】:

docs.djangoproject.com/ja/1.9/topics/db/models/… 【参考方案1】:

只需在您的模型中显式创建带有primary_key=Trueid 字段:

class SomeModel(models.Model):
    id = models.IntegerField(primary_key=True)

这样它就不会自动递增,但它仍然是主键。

【讨论】:

太棒了。我以为我试过了,但也许我的迁移当时没有工作。谢谢。

以上是关于如何在没有自动增量的情况下创建主键?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有触发器和手动插入的情况下在 mysql 中生成/自动增量 guid?

如何将自动增量设置为非主键?

如何使主键作为房间持久性库的自动增量

Oracle中如何将自动增量添加到现有表中

如何在领域android中设置主键自动增量

如何在 phpMyAdmin 中使用自动增量