Truncate (SQL)

In SQL, the TRUNCATE TABLE statement is a data manipulation language (DML)[1] operation that deletes all rows of a table without causing a triggered action.

The result of this operation quickly removes all data from a table, typically bypassing a number of integrity enforcing mechanisms.

It was officially introduced in the SQL:2008 standard, as the optional feature F200, "TRUNCATE TABLE statement".

The following characteristics distinguish TRUNCATE TABLE from DELETE: The SQL standard classifies TRUNCATE as a data change statement, synonymous with data manipulation (DML).

This aligns with TRUNCATE being logically equivalent to an unconstrained DELETE operation.