论坛首页 综合技术版 Database

mysql 的 AUTO_INCREMENT 问题

浏览 4010 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
时间:2008-06-06
想让mysql 听你的话?这种特殊情况,没有比手动维护更好的方法了。要么update,要么alter 。
   
0 请登录后投票
时间:2008-06-09
到了6.0以后的版本就没有这个问题了,即使是删除了表中的记录,auto_increment都是自动加1的,比如原来最大的id=1000,你删除掉啊id=1000的记录,你再插入的时候,auto_increment就已经是1001了,没有你说的那个情况
   
0 请登录后投票
时间:2008-06-11
suiyuanba 写道
到了6.0以后的版本就没有这个问题了,即使是删除了表中的记录,auto_increment都是自动加1的,比如原来最大的id=1000,你删除掉啊id=1000的记录,你再插入的时候,auto_increment就已经是1001了,没有你说的那个情况

哦,没明白你是想说什么,就是6.0以后的版本,mysql重启之后,auto_increment就是一直自增的吗?
   
0 请登录后投票
时间:2008-06-16
suiyuanba 写道
到了6.0以后的版本就没有这个问题了,即使是删除了表中的记录,auto_increment都是自动加1的,比如原来最大的id=1000,你删除掉啊id=1000的记录,你再插入的时候,auto_increment就已经是1001了,没有你说的那个情况

但有什么用,谁敢用于生产环境
   
0 请登录后投票
时间:2008-06-16
我也碰到这问题,弱弱的。

另外,楼上正解。[b][/b]
   
0 请登录后投票
时间:2008-06-23
好痛苦!!有几次遇到这个AUTO_INCREMENT在mysql中有的方法。。但在ms sql没有。。都不能还原。。
   
0 请登录后投票
时间:2008-06-27
这问题确实有.

但是为什么你要删数据呢.为什么要赶上刚删数据时重启呢.
   
0 请登录后投票
时间:2008-06-30
这个概率很低的吧,除非你业务十分不稳定经常在重启中度过...
   
0 请登录后投票
时间:2008-07-02
hama 写道
pi1ot 写道
历史表不要用auto incr,把原表id复制过去

恩,可能是我没描述清楚,我的做法就是 你说的这种

假设是这两张表,sometable sometable_duplicate

当我把sometable里id=1000的记录移动到sometable_duplicate里(sometable里id=999的记录还没移动),这时候,sometable的max(id)=999,且sometable_duplicate里存在了id=1000的记录,然后重启数据库,这时候sometable下一条记录就会AUTO_INCREMENT 到1000(这就是问题所在),如果再把这条记录移动到sometable_duplicate时就会出问题,因为sometable_duplicate里已经存在了id=1000记录了

1、为什么要建两张表呢?
2、是为了速度,把经常被查询的放到一张表,不常被查询的放一张表吗?
3、那按这样的思想来说,系统使用的很多表都要有一张常用表、一张历史表会更好些?

新手知识不多,想问下这几个问题?
   
0 请登录后投票
论坛首页 综合技术版 Database

跳转论坛:
JavaEye推荐