最近我遇到了一个问题,即带有内存引擎的 mysql 表已满,并且插入失败(真的很长的 php 脚本)。我很快就摆脱了它,在我插入之前检查是否已经有很多行并删除它们
if (query("Select count(*) As c From my_table")['c'] > $N)
{
query("Delete from my_table Order by ID Limit " . round($N/2));
}
但这并不酷。实际上,我希望 mysql 为我做这件事。现在,问题是:
是否有标准的替代 AUTO_INCREMENT,但不是LAST+1
每次都返回,而是LAST+1 (mod N)
. 这将允许使用旧的 ID 列值覆盖行。有没有这样的机制,还是我必须自己实现?
谢谢你。