问题描述
MySQL数据库中,如何重置自增字段AUTO_INCREMENT
的值呢?现在需求将MySQL
数据库中的表的自增列的值进行重置,应该如何处理呢?
方案一
可以使用MySQL
的ALTER
语句,如下:
ALTER TABLE tablename AUTO_INCREMENT = 1
或者:
ALTER TABLE tablename AUTO_INCREMENT = value;
注意:
ALTER TABLE tablename AUTO_INCREMENT = value;
在InnoDB
引擎中不起作用!!!
方案二
SET @num := 0;
UPDATE your_table SET id = @num := (@num+1);
ALTER TABLE your_table AUTO_INCREMENT =1;
方案三
如果你使用phpMyAdmin的MySQL
数据库图形管理工具的话,可以打开指定的表,在’操作(operations)’的选项卡中,可以直接设置当前表的自增列的数值,如下图:
方案四
ALTER TABLE my_table MODIFY COLUMN ID INT(10) UNSIGNED;
COMMIT;
ALTER TABLE my_table MODIFY COLUMN ID INT(10) UNSIGNED AUTO_INCREMENT;
COMMIT;
方案五
可以使用TRUNCATE
命令,如下:
TRUNCATE TABLE table_name
特别注意:
TRUNCATE
会删除指定表中的所有数据,所以在使用TRUNCATE
命令前请一定谨慎,使用TRUNCATE
命令前请一定谨慎,使用TRUNCATE
命令前请一定谨慎!!!重要的事情说三遍!!!
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册