我正在构建一个web应用程序,并对mysql有一个中级的理解。
我正在试图解决我所看到的一个问题。
我的系统可能已经使用了10年。我担心会用完自动增量值。
是否可以将旧数据归档或转储到系统之外,以打开以前使用的旧自动增量值?
我已经读到自动递增将继续,直到它达到int的最大值,然后抛出错误...?
我正在寻找关于这个问题的任何信息。举例说明其他系统(如会计系统)如何处理此限制。
我正在使用我的自动增量
发布于 2010-11-20 22:18:03
不能,你不能恢复到旧的和过时的autoinc值。为什么不将对应的列设置为BIGINT?这样一来,你的应用程序可能会运行几十年而不会达到极限。
我忘了告诉你,你必须在你的应用程序逻辑中处理新类型(我假设它是PHP)。不要使用整数,而应使用浮点数。
发布于 2010-11-20 22:29:03
int unsigned = 10年内每年4.30亿
如果不使用bigint unsigned,应该就足够了:P
发布于 2010-11-20 22:20:32
您可以通过将id列更改为类似于BIGINT的形式来增加您的最大自动增量值-它支持最多9223372036854775807的数字,您永远不会需要更多。不,你不能释放旧的id值给具有该id的新条目。
https://stackoverflow.com/questions/4233135
复制相似问题