对于auto_increment的ID值,如果你默认插入零或者让系统自动插入的话,在你删除中间的某个值之后,在插入新的值的话,系统会默认的将你表中最下面列值加一存入,这就导致有时候会出现由于ID值重复不能完成插入的动作,例如:
你现在有ID值1,2,3,4,5,当你删除4后,再插入新的值,那么新的ID为5+1,而你插入的新的记录将会放在4原来所在的位置,那么当你再次插入一个记录,这个新的ID依然会找这个表中的最后一个记录的ID值加一,也就是还是5+1,这时候就出现了两个6而导致错误。
解决的办法是:插入时显示的将ID值设置为NULL,就不会出现问题拉,既 id=null;那么这时候当你再插入新的值的时候,系统会找出这个表中ID值最大的那个加一。
希望以上能对你有所帮助 :)如果不行的话,再讨论。