Suggest an editImprove this articleRefine the answer for “How do you delete all rows from a table?”. Your changes go to moderation before they’re published.Approval requiredContentWhat you’re changing🇺🇸EN🇺🇦UAPreviewTitle (EN)Short answer (EN)To delete every row from a table, you can use either `DELETE` or `TRUNCATE`: `DELETE FROM Employees;` removes every record while keeping the table's structure, and can be rolled back within a transaction; `TRUNCATE TABLE Employees;` does the same thing faster, but usually with no rollback option in some DBMSs. **Key point:** `DELETE` checks each record and so can be slower on large tables, while `TRUNCATE` also often resets auto-increment counters.Shown above the full answer for quick recall.Answer (EN)ImageTo delete every row from a table, you can use either the `DELETE` **or** `TRUNCATE` **commands**. ### 1. Using `DELETE` ```sql DELETE FROM Table_Name; ``` - Removes every record, but **keeps the table's structure**. - The delete can be rolled back within a transaction (`ROLLBACK`), if that's supported. - Can be slower on large tables, since it checks each record. ### 2. Using `TRUNCATE` ```sql TRUNCATE TABLE Table_Name; ``` - Removes every record **fast**, also **keeps the table's structure**. - Usually **doesn't support a rollback** in some DBMSs. - Auto-increment counters are often reset. **Example:** ```sql TRUNCATE TABLE Employees; ``` > Put simply, `DELETE` and `TRUNCATE` both **clear a table entirely**, but `TRUNCATE` does it faster and with no per-row checking.For the reviewerNote to the moderator (optional)Visible only to the moderator. Helps review go faster.