自增加的ID,当增长到10时,我把2至10的数据删掉,重启数据库,ID是从2开始,而不是从11开始,为什么呢?这样带来的坏处是:我有一个接口表(ID是自增加的),接口表的数据经过处理后要移到历史表,但是接口表会有一些异常数据停留。假设接口表有ID为1到10的数据需要处理,处理完后,ID为2至10的数据都移到了历史表,但是有一条ID为1的异常数据停留在接口表中,这时候重启数据库,接口表的ID是从2开始,这些新增的数据移到历史表的话,就会有主键重复的错误。Tips:MYSQL的版本是5.6,存储引擎是InnoDB
mysql自增加ID
mysql自增加ID
你测试一下,你在mysql操作界面上,insert into 一条记录,不插入ID(先删除掉几条记录),成功后看一下id。
然后你用自己的应用程序再去insert into一条记录,再来看看ID是多少。看看又没有变化
你测试一下,你在mysql操作界面上,insert into 一条记录,不插入ID(先删除掉几条记录),成功后看一下id。
然后你用自己的应用程序再去insert into一条记录,再来看看ID是多少。看看又没有变化
直接在数据库客户端写insert语句新增10条数据,ID从1自增到11,,
删除5条数据,重启数据库后,ID变成6了,