Sqlite Truncate Table
# SQLite Truncate Table
In SQLite, there is no `TRUNCATE TABLE` command, but you can use the SQLite **DELETE** command to delete all data from an existing table.
## Syntax
The basic syntax of the DELETE command is as follows:
sqlite> DELETE FROM table_name;
However, this method cannot reset the auto-increment counter.
To reset the auto-increment counter, you can use the following method:
sqlite> DELETE FROM sqlite_sequence WHERE name = 'table_name';
> When an SQLite database contains an auto-increment column, a table named `sqlite_sequence` is automatically created. This table contains two columns: `name` and `seq`. The `name` column records the table where the auto-increment column is located, and the `seq` column records the current sequence number (the number for the next record is the current sequence number plus 1). If you want to reset the sequence number of a certain auto-increment column, you only need to modify the `sqlite_sequence` table.
>
> UPDATE sqlite_sequence SET seq = 0 WHERE name = 'table_name';
## Example
Assume the COMPANY table has the following records:
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ----------1 Paul 32 California 20000.02 Allen 25 Texas 15000.03 Teddy 23 Norway 20000.04 Mark 25 Rich-Mond 65000.05 David 27 Texas 85000.06 Kim 22 South-Hall 45000.07 James 24 Houston 10000.0
Below is an example of deleting the records from the table above:
SQLite> DELETE FROM sqlite_sequence WHERE name = 'COMPANY';SQLite> VACUUM;
Now, all records in the COMPANY table are completely deleted, and using the SELECT statement will produce no output.
YouTip