mysql重置自增数,删除末尾数据后重新末尾数据继续递增

先说明:本文主要讲述的是  如何删除末尾数据后,自增数从末尾自增数开始自增,而不是内置计数器继续自增。mysql

前言:

通常mysql咱们都会设置一个自增数做为主键。测试时不免须要插入删除数据。可是当咱们删除测试数据后,会发现自增数不是末尾自增数开始自增,而是继续内置计数自增。有时咱们并不但愿自增数间隔过大。例如:几百行数据后面插错了100多条数据的时候须要删除(编号本来正常的1数到400,忽然跳到500开始计数,其实挺bug的)。sql

测试表

测试数据:

tx*都是测试帐号。须要删除它们但当新用户注册时,却自动从10开始,而不是接着5。数据库

 

方法一:清空数据库【这会清空数据!这会清空数据!这会清空数据!】

truncate TABLE 表名;

这种方法会重置该表,相比delete表格 这会重置自增数。工具

 

方法二:从新设计表【大概是我原创方法,毕竟网上没看到有人测试过】

ps:我是图形化界面操做的,此处只写步骤,具体mysql语句未知,以后研究下。测试

一、设计该表,把“自动递增”的选项取消掉。提交。

二、从新勾选“自动递增”。提交。

三、咱们插入新用户试试吧。spa

很好,从原来最后数据的自增数开始自增了.net

 

EX:若是但愿所有从新编号。我建议仍是从新加个自动递增的字段合适。设计

若是经过“清除自增数 -> 取消自动递增、主键、不是空 -> 提交 -> 从新设置自增数、主键、不是空 -> 提交”3d

虽然能够从新编号。但很容易致使数据错乱,特别是多表关联的时候。code

 

后记:

以上是楼主基于图形化界面工具的测试结果。楼主对mysql不算太熟悉。具体步骤的mysql语句是不清楚的。当数据量巨大,这种改字段属性的方法是否会效率低下也是不清楚的。欢迎高手们提点。

转载请注明出处。  https://my.oschina.net/jacky326/blog/3076262

相关文章
相关标签/搜索