表(数据库)中的自动增量

时间:2011-12-26 13:29:55

标签: database auto-increment

我尝试制作一个Tasks表,非常频繁地添加/删除项目。 当应用程序存在时,该表用于存储排队的任务并使其出列。

当应用程序中断(重新启动)时,下一个应用程序生命周期将继续执行未完成的任务,并可能再次添加新任务。

表格如下:

table Tasks
{
   int ID auto increment

   // another columns
}

我们知道,即使我们删除了上一条记录,id也会一直增加。 如果id达到int.MaxValue然后又添加了一些新记录会发生什么? id是否会重置为1,递增到2,3,4 ...搜索未使用的ID? 不,如何让id再次回滚到1(或任何免费ID)?

1 个答案:

答案 0 :(得分:0)

MySQL中的

alter table tbl auto_increment=1;  

但是你必须运行这个命令才能发生任何事情。或者在更新/插入之前将其构建为触发器。当尝试输入的记录超过您的ID的最大值时,您将收到错误。

http://dev.mysql.com/doc/refman/5.1/en/example-auto-increment.html了解更多信息

警告: 如果之前的记录仍然存在,执行上述操作可能会导致唯一性或关系出现问题。