DBASK-数据库管理员结构化知识体系-Structured knowledge system for DataBase Administrators
SQL基础SQL进阶SQL函数

Home

SQL进阶:sql TRUNCATE TABLE

TRUNCATE TABLE 语句,如果我们仅仅需要删除表内的数据,但并不删除表本身,那么我们该如何做呢?

说明

在 SQL 中,TRUNCATE TABLE语句用于快速删除表中的所有数据,但保留表的结构(列、约束等),与 DELETE 语句相比,TRUNCATE TABLE 通常更快,因为它是通过删除表中的所有行而不是逐行删除实现的。

然而,需要注意的是,TRUNCATE TABLE不会触发触发器,而且无法在事务中进行回滚。

请使用 TRUNCATE TABLE 语句:

语法格式:

TRUNCATE TABLE TABLE_NAME;

参数说明:

  • TRUNCATE TABLE:表示清空表的操作。
  • table_name:要清空的表的名称。

以下是一个简单的例子,假设要清空名为 my_table 的表:

实例

TRUNCATE TABLE my_table;

当使用 TRUNCATE TABLE 清除数据时,表的主键自增值将被重置为默认的起始值,通常是从 1 开始。这意味着下一次插入数据时,主键将从 1 开始递增。与之不同的是,使用 DELETE 语句删除数据并不会重置主键自增值,而是保留当前的自增值。

来源:https://www.runoob.com/sql/sql-drop.html