在Django中,如果您未指定primary key
,它将添加一个integer autofield
。我的问题是,如果此增量ID达到整数限制,那么之后会发生什么?
答案 0 :(得分:0)
数据库将引发错误,并且插入的内容将失败。
如果使用的是MySQL,则错误可能是这样的:ERROR 1467 (HY000): Failed to read auto-increment value from storage engine
。
django的自动增量ID的限制为2,147,483,647。因此,除非您要存储大量数据,否则几乎不可能达到此限制。如果您使用大量数据,则可以将bigint
类型用于该字段。
答案 1 :(得分:-1)
在PostgreSQL中,最大ID字段为9223372036854775807
如果您的数据库具有这些记录量,则它将不起作用。假设一个简单的查询需要执行一年以上的订单
或如果每个记录占用100字节(索引和...数据对于每个记录来说太少),则该记录量将占用838860700 TB的存储空间。没有存储可以在全世界范围内存储这些数据量。