# TRUNCATE Statement

__*TRUNCATE*__

+ syntax: `TRUNCATE [TABLE] table_name`  
+ The TRUNCATE TABLE statement deletes all rows in the table
+ It resets AUTO_INCREMENT to the starting value
+ Unlike DELETE, it's DDL, not DML, meaning it can't be transactional and cannot be ROLLBACK
+ Equivalent to execute in order: `DROP TABLE`, `CREATE TABLE`
+ It may be possible to undo using FLASHBACK TABLE
------------------------------------------------------------
The TRUNCATE statement removes all data from a table in a non-transactional manner. The TRUNCATE statement can be considered semantically identical to the DROP TABLE + CREATE TABLE combination.

Both TRUNCATE TABLE table_name and TRUNCATE table_name are valid syntax.
