【SQL】清空表数据后如何让自增 ID 从 1 开始

Posted by 西维蜀黍 on 2019-10-20, Last Modified on 2021-09-21

Problem

MySQL清空表中数据后,如何让自增ID从1开始?

Solution

清空表中数据时,使用truncate命令,而不用delete命令。

mysql> truncate test;

使用truncate命令的好处:

  • 速度快:因为 trancate 命令是 DDL 语句,而 delete 语句是 DML 语句,因此 trancate 命令的执行非常快(当然 drawback 就是不能回滚,而 delete 语句可以)。
  • 自增id会从 1 开始进算

关于 delete、drop、trancate 三种删除操作语句的区别,可访问【SQL】常用SQL语句

Reference