mySQL主键奇怪

时间:2014-08-31 22:51:37

标签: php mysql

我有一个脚本,它将INSERT的数据放入一个表中,然后当你插入新数据时,删除前一个记录,然后插入INSERT的当前数据集。

唯一的问题是主键被搞砸了。

e.g。前四行

1
2
3
4

然后当我删除这些并输入新数据时

5
3
4
6

注意:以上数字代表主键ID自动递增

为什么增量几乎变得混乱?

2 个答案:

答案 0 :(得分:2)

自动递增号码会混淆。它们在桌子上是独一无二的,这是他们唯一的目的。

如果您选择数据,则数据库将尽快获取记录,如果您未指定特定订单,则会以不可预测的顺序返回记录。

这意味着如果你指定

select * from your_table
order by id

然后记录增加了数字。如果你删除记录,那么gabs就不会被填满。

答案 1 :(得分:0)

如果您想重新开始使用,请使用truncate table代替delete。这会将计数器重置为0:

truncate table <your table here>;