考虑一个带有自动增量列的简单表,如下所示:

CREATE TABLE foo
(
  `fooid` bigint unsigned NOT NULL auto_increment,
   ....snipped.... other columns
  PRIMARY KEY (`fooid`)
)
ENGINE=InnoDB AUTO_INCREMENT=10

如何重新设计这一代码,以使我们不会达到bigint数据类型的最大值?
无符号范围是0到18446744073709551615。
我不知道达到18446744073709551615需要多长时间,但是像Y2K问题一样,我想为此做好准备。

最佳答案

假设您每毫秒插入一行。

18446744073709551615毫秒=
18446744073709552秒=
307445734561826分钟=
5124095576030小时=
213503982335天=
584942417年

所以这不是真的像Y2K问题

您可以每毫秒插入一百万行,并且在500多年后仍然可以。

换句话说:不用担心。

09-25 17:32