TRUNCATE removes all rows from a table. At a high level, it works by dropping the table and recreating a new table with the same name.
The “ statement performs a schema change. For more information about how online schema changes work in CockroachDB, see .
TRUNCATE is a schema change, and as such is not transactional. For more information about how schema changes work, see .
Synopsis
Required privileges
The user must have theDROP on the table.
Parameters
| Parameter | Description |
|---|---|
table_name | The name of the table to truncate. |
CASCADE | Truncate all tables with dependencies on the table being truncated.CASCADE does not list dependent tables it truncates, so should be used cautiously. |
RESTRICT | (Default) Do not truncate the table if any other tables have dependencies on it. |
Viewing schema changes
This schema change statement is registered as a job. You can view long-running jobs with .Examples
Truncate a table (no foreign key dependencies)
Truncate a table and dependent tables
In these examples, theorders table has a relationship to the customers table. Therefore, it’s only possible to truncate the customers table while simultaneously truncating the dependent orders table, either using CASCADE or explicitly.

