mysql 主键自增,删除数据之后再次insert时id希望是能够恢复到初始值 30

mysql主键是自增长的,初始为1,自增量为1,问题是删除数据之后再次insert时主键id希望是能够恢复到初始值.例如我一个表原来有5笔数据,主键id是从1到5,后来我... mysql 主键是自增长的,初始为1,自增量为1,
问题是删除数据之后再次insert时主键id希望是能够恢复到初始值.例如我一个表原来有5笔数据,主键id是从1 到5,后来我加了1笔数据就是1到6,然后我又把刚加的这笔数据删掉,之后再加。这时候按照一般来说加入的数据主键id是7,但是我希望加入的数据主键id仍然是6,请问哪位高手知道,帮小妹一把。十分感谢
是在表尾操作,能详细的讲讲吗,我苦恼了2个小时了。
展开
 我来答
stp111
2010-12-29 · TA获得超过341个赞
知道小有建树答主
回答量:283
采纳率:0%
帮助的人:225万
展开全部
可能的反方案: 需要找到系统表,查找到对应该表键对应的计数器,进行修改。
但这样可能引起一系列的系统同步的问题。

如果系统没有提供对自增加值的修改,还是不要改的好。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
microji
2010-12-29 · TA获得超过388个赞
知道小有建树答主
回答量:201
采纳率:0%
帮助的人:86.8万
展开全部
你可以直接插入你想插入的id值,比如一个表:student( id, name, sex) ,
1-5的记录被你删了,只有6这条,这个时候插入,不写id,则id自动为7 ,
但你想插入1-5 ,可以这么写:
insert into student(id,name, sex) values(1, '小王', 'male'), (2, '小李', 'femeal') 等等。。
也就是说,主键的值是可以自己指定的的,但前提是,这个值不存在,
另外,auto_increment值是按照你当前记录中的最大id
来的,所以不要试图去改动这个值,比如你现在插入一个条id为1000的,那么之后id就会自动变为1001
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dgddssdhh
2017-07-18 · TA获得超过769个赞
知道小有建树答主
回答量:1455
采纳率:53%
帮助的人:518万
展开全部
主键自增都会存在属性AUTO_INCREMENT 代表插入的时候主键从几开始
SELECT AUTO_INCREMENT FROM information_schema.tables WHERE table_name="表名"; 查询这个值
应该是可以这样修改
alter table 表名 AUTO_INCREMENT = number ;
不知道你想要的是什么效果
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小鹿聊情感
2017-07-18 · 超过13用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:13.7万
展开全部
要么你插入的时候指定主键是6,也就是插入的时候连主键一起插就好了。当超过7时auto_increment值才开始往上增
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-07-10
展开全部
自增列必须是int类型。具体的修改语句的话,前面的这位已经贴出来了。altertableyourtablenamechangeididintauto_increment;补充一点:修改对于之前已经插入的数据不起作用,对于修改后插入的数据起效。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式