mysql 主键自增_mysql自增主键在大量删除后如何重新设置避免断层
一般在设计数据表结构的时候,我们经常使用int来作为表的主键,并且让他自动增长,那么这样就会导致id出现中间断层的问题,那么如何解决呢,请继续往下看。
假设,我们有一张表为aa,我们来查找id,代码如下
select * from aa;+----+| id |+----+| 1 || 2 || 3 || 4 || 5 || 6 || 7 || 8 || 9 |+----+这时候id值并未断层,每次都在+1,我们删除掉7和8 ,然后再次执行sql,代码如下:
delete from aa where id in (7,8);select * from 删除两条数据,再次添加后断层了这时候我们发现新增的一条数据id是10,少了7和8两个id,那么我们怎么操作才能让他从7开始呢。这个时候AUTO_INCREMENT已经变为了9,不管你删除多少条,它都将从9开始增加。我们修改一下这个数值。请继续向下看:
alter table aa auto_increment=7;insert into aa values(null);select * from aa;+----+| id |+----+| 1 || 2 || 3 || 4 || 5 || 6 || 7 || 9|+----+ 我们看到,这时候7回来了,新增的一条数据从6开始+1变成了7.因此,我们只需要修改这个代码就可以了。
alter table aa auto_increment=6;
到此我们的讲解就结束了,欢迎收看。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
