mysql自动递增id怎么样快速回复到无间隔递增?如果删除了某些条,就会出现间隔id,看起来坑坑洼洼的。
我用的是navicat,如何重新排整id自动递增?

解决方案 »

  1.   

    没有办法,AUTO_increment只不过是个系统自动增长的数字,一般用于做主键,根本没必要追求它的连续!
      

  2.   

    ...你用了自增列 就要承受这样的断层...
    自增列重新序列化的必要性不大。。
    如果你非要这么做。
    工具我不知道有什么办法
    但是语句可以这样:
    alter table tbname
    drop id,
    add id int unsigned not null auto_increment ;先删除原来的自增列ID 然后添加一个id列
      

  3.   

    2楼好办法。mysql> select * from b;
    +------+
    | b    |
    +------+
    |    1 |
    |    2 |
    |    3 |
    +------+
    3 rows in set (0.00 sec)mysql> set @row_count:=0;
    Query OK, 0 rows affected (0.05 sec)mysql> select @row_count:=@row_count+1 as id,b from b;
    +------+------+
    | id   | b    |
    +------+------+
    |    1 |    1 |
    |    2 |    2 |
    |    3 |    3 |
    +------+------+
    3 rows in set (0.03 sec)mysql>
    你在查询的时候可以用这样的用户自定义变量来模拟自增字段。