我一直在使用int(10)并且注意到Wordpress使用bigint(20) - 使用bigint(20)和int(10)进行id自动增量有什么不同?我应该将哪一个用于id列?
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
Vs的
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
感谢。
答案 0 :(得分:61)
根据MySQL Numeric Types手册页的详细信息,差异纯粹是可以存储的最大值(对于bigint(20)为18,446,744,073,709,551,615,对于int(10)为4,294,967,295)
顺便说一下,除非你使用ZEROFILL,否则(20)和(10)的使用在很大程度上是无关紧要的。 (即:它实际上并没有改变存储数量的大小 - 这完全取决于类型。)
但是,实际上应该注意的是,除非您是 真正 活跃的博客,否则您很快就不会达到这些限制中的任何一个。
答案 1 :(得分:10)
唯一的区别是类型的范围。 INT
长度为32位,而BIGINT
长度为64位,因此可以存储更大的数字,例如123456789123456789
(无法存储为INT
)。< / p>
以下是MySQL整数类型的完整列表:http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html