怎么样让带有auto_increment属性的id列中一些记录被删除之后,后面的id自动把前面的填充满呢? 假如我的id列(auto_increment)中有10条记录,1,2,3,4,5,6,7,8,9,10我删除3,4,5之后再插入数据,id值却是从11开始,有没有什么办法让新插入的id值从删除的地方3开始增加呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 备份数据(除了自增字段)->TRUNCATE tt;->插入记录 首先,auto_increment不能,而且即使能够实现,也绝对得不偿失,即使你能够设置下一个ID=3,试问,在插入了3条记录以后(3,4,5),下一个ID应该=6吧,可是显然插入不了。这个时候有两种可能:1,插入失败,但ID自增,按照你的例子,你可能需要插入失败5次,第六次(ID=11)才能操作成功;2,数据库帮你负责找到下一个合适的位置。无论哪种情况,当你的数据库有几百万甚至更多的数据的时候,显然是个灾难! TRUNCATE TABLE table1或者alter table table1 auto_increment=1 拜托,难道RDBMS等价于是excel(即使excel都可能存在vlookup之类的关联) 其他表呢?所以我说,数据库,不是excel。即使是excel都不能轻易变更ID,何况数据库。 如果是删除3,4,5,剩下 1,2,6,7,8,9,10则你无法设置MYSQL自动从3开始。除非你自己使用触发器。 1、楼主没有说明是否有其它表关联;2、就楼主的问题,重新编号是比较好的方法;3、当然也可以用SQL语句找出断号,再插入表中。 使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器 不是来找茬的。不过,我还是那句话,RDBMS不是Excel——连Excel都可能存在关联,何况数据库。“齐桓公”不清楚,星星就该问清楚或者陈明利害,而不是直接把核武器交给“齐桓公”。 mysql Error Code: 1146; 求一条sql语句 误删info.frm文件后,如何删除重建info表! 批量导入数据遇到的问题 字符时间比较!! 如果postgresql编码是unicode, 分类统计(group by)、distinct遇到汉字就不正确了,如何解决 表中有一项字段值输入错了,请问怎样修改? windows下大数据 如何备份 请教一个关于用户留存率的问题 Mysql 嵌套查询 测试mysql.Access denied for user 'ODBC'@'localhost' (using password: NO) 怎样解决? 一个主从数据库的小问题
1,插入失败,但ID自增,按照你的例子,你可能需要插入失败5次,第六次(ID=11)才能操作成功;
2,数据库帮你负责找到下一个合适的位置。
无论哪种情况,当你的数据库有几百万甚至更多的数据的时候,显然是个灾难!
拜托,难道RDBMS等价于是excel(即使excel都可能存在vlookup之类的关联)
2、就楼主的问题,重新编号是比较好的方法;
3、当然也可以用SQL语句找出断号,再插入表中。
“齐桓公”不清楚,星星就该问清楚或者陈明利害,而不是直接把核武器交给“齐桓公”。