• mysql自动增长的有关问题,怎么恢复从1开始


    mysql自动增长的问题,如何恢复从1开始
    在一个表中我设置到autoid为自动增长列
    例如有如下数据

    1 张三 男 20
    2 王五 男 22
    3 李四 男 25
    4 陈大 男 19

    现在我把 autoid=3 和 autoid=4 的两条记录删除
    然后我再插入一条数据,例如:

    insert into userinfo(autoid,username,sex,age) values('null','春哥','男','27');

    但是面临一个问题,编号是从5开始了,而不是接着从3开始.毕竟我 第三条和第四条记录已经删除的了.

    请问如何让autoid 从3开始,请高手赐教.



    ------解决方案--------------------
    alter table t_Myxiao7 AUTO_INCREMENT 3;

    SQL code
    mysql> create table t_Myxiao7(id int not null auto_increment primary key ,name v
    archar(10), genda varchar(10),age int);
    Query OK, 0 rows affected (0.08 sec)
    
    mysql> insert into t_Myxiao7 values
        -> (null,'张三','男',20),
        -> (null,'王五','男',22),
        -> (null,'李四','男',25),
        -> (null,'陈大','男',19);
    Query OK, 4 rows affected (0.05 sec)
    Records: 4  Duplicates: 0  Warnings: 0
    
    mysql>
    mysql> select * from t_Myxiao7;
    +----+------+-------+------+
    | id | name | genda | age  |
    +----+------+-------+------+
    |  1 | 张三 | 男    |   20 |
    |  2 | 王五 | 男    |   22 |
    |  3 | 李四 | 男    |   25 |
    |  4 | 陈大 | 男    |   19 |
    +----+------+-------+------+
    4 rows in set (0.01 sec)
    
    mysql> delete from t_Myxiao7 where id=3 or id =4;
    Query OK, 2 rows affected (0.08 sec)
    
    mysql> select * from t_Myxiao7;
    +----+------+-------+------+
    | id | name | genda | age  |
    +----+------+-------+------+
    |  1 | 张三 | 男    |   20 |
    |  2 | 王五 | 男    |   22 |
    +----+------+-------+------+
    2 rows in set (0.00 sec)
    
    mysql> alter table t_Myxiao7 AUTO_INCREMENT 3;
    Query OK, 2 rows affected (0.19 sec)
    Records: 2  Duplicates: 0  Warnings: 0
    
    mysql> insert into t_Myxiao7 values
        -> (null,'春哥','男','27');
    Query OK, 1 row affected (0.06 sec)
    
    mysql> select * from t_Myxiao7;
    +----+------+-------+------+
    | id | name | genda | age  |
    +----+------+-------+------+
    |  1 | 张三 | 男    |   20 |
    |  2 | 王五 | 男    |   22 |
    |  3 | 春哥 | 男    |   27 |
    +----+------+-------+------+
    3 rows in set (0.00 sec)
    
    mysql> 


    ITOKIT.COM提示:如果表中数据没有用。如果直接删除数据,自动增长ID还是不会从1开始的,可以利用“清空数据表”。这样自动增长ID也将会从1开始。

         本文转载自:http://www.myexception.cn/mysql/827353.html

  • 相关阅读:
    LeetCode 204
    华为OJ2051-最小的K个数(Top K问题)
    华为OJ1964-求解立方根(牛顿迭代法)
    华为OJ2288-合唱队(最长递增子序列)
    华为OJ2011-最长公共子串
    【Unix编程】进程间通信(IPC)
    可利用空间表(Free List)
    13.10 Scrapy 通用爬虫
    13.9 Scrapy 对接 Splash
    第十四章 分布式爬虫
  • 原文地址:https://www.cnblogs.com/shellway/p/3929722.html
Copyright © 2020-2023  润新知