SQLite Truncate Table
En SQLite, no existe el comando TRUNCATE TABLE, pero se puede usar el comando de SQLiteDELETEpara eliminar todos los datos de la tabla existente.
Sintaxis
La sintaxis básica del comando DELETE es la siguiente:
sqlite> DELETE FROM table_name;
Pero este método no puede poner a cero el número de incremento.
Si desea poner a cero el número de incremento, puede utilizar el siguiente método:
sqlite> DELETE FROM sqlite_sequence WHERE name = 'table_name';
Cuando la base de datos SQLite contiene una columna de autoincremento, se crea automáticamente una tabla llamada sqlite_sequence. Esta tabla contiene dos columnas: name y seq. name registra la tabla donde se encuentra la columna de autoincremento, y seq registra el número de secuencia actual (el número del siguiente registro es el número de secuencia actual más 1). Si desea poner a cero el número de secuencia de una columna de autoincremento, solo necesita modificar la tabla sqlite_sequence.
UPDATE sqlite_sequence SET seq = 0 WHERE name = 'table_name';
Ejemplo
Supongamos que la tabla COMPANY tiene los siguientes registros:
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
A continuación se muestra el ejemplo de eliminación de los registros de la tabla anterior:
SQLite> DELETE FROM sqlite_sequence WHERE name = 'COMPANY'; SQLite> VACUUM;
Ahora, los registros de la tabla COMPANY se han eliminado por completo, y el uso de la sentencia SELECT no producirá ninguna salida.
Otras extensiones