Django主键有多大?

时间:2013-11-19 20:54:31

标签: django django-models primary-key django-postgresql

模型的pk值有多高可以达到最大值吗?例如,对于像活动Feed模型这样的东西,pk可以变得非常大。

Ex,“Kyle喜欢这篇文章”,“Alex评论了这篇文章”等等。你可以看到,对于每个动作,都会创建一个活动供稿对象。是否会达到某种最大阈值?我做了一些研究,但没有找到简明的答案。如果有一些限制,怎么能克服这个?

我目前使用PostgreSQL作为我的数据库。

2 个答案:

答案 0 :(得分:6)

Django的自动递增ID是AutoFields,它是IntegerField的子类。它将生成主键作为PostgreSQL integer,它们是带符号的32位整数,最大值为2147483647,略高于20亿。

答案 1 :(得分:-4)

我要猜测并假设postgreSQL将主键存储为64位无符号整数。如果是这种情况,那么您最多可以有2 ^ 64个不同的值。即使使用32位整数,也会留下4294967296种可能性。除非你是推特或脸谱版,否则你不应该对这种限制感到恼火。