在mysql数据库中,id为自增字段,现在数据为1~100的数据记录,我将id为50~70的记录删除,请继续看……

如题!在mysql数据库中,id为自增字段,现在数据为1~100的数据记录,我将id为50~70的记录删除,想让其后的id为71~100的数据前移,形成1~80的连续记录,mysql中该如何做?
还有需求就是,新增的数据要从81开始,对性能也有需求,请明白告知一下!

像你这种,先删除主键和自动增长 再操作,完成之后重新主键就OK咯。
Alter table tb change id id int(10);

Alter table tb drop primary key

//这是添加主键
alter table tb add primary key(id);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-11
delete from xx where id>=50 and id<=70;
update xx set id=id-20 where id>=71 and id<=100

这样做是可以满足你暂时的要求,但是有一点就是 ,如果你还有插入数据的话 ,那么它的id 就是从101开始了
第2个回答  2013-07-11
DELETE FROM xx WHERE id>50 AND id<70

UPDATE xxx SET id = id-21 WHERE id > 71
第3个回答  2013-07-11
delete from xx where id>=50 and id<=70;
update xx set id=id-20 where id>=71 and id<=100;