2010-08-19 12 views

Respuesta

12

Si tengo que truncar una tabla, simplemente la dejo caer y la vuelvo a crear.

Documentación (http://www.sqlite.org/lang_delete.html):

Cuando se omite el donde a partir de una instrucción DELETE y la mesa se va a eliminar no tiene disparadores, SQLite utiliza una optimización para borrar todo el contenido de la tabla sin tener que visitar cada fila de la tabla individualmente. Esta optimización "truncada" hace que la eliminación se ejecute mucho más rápido.
+0

no hay otra manera? – Kandha

1

Este es el código que usé, sólo para ilustración:

private static final String TABLE_SCHEMA = "CREATE TABLE " + TABLE_NAME + " (\"id\" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL UNIQUE , \"runtime\" INTEGER, \"timestamp\" DATETIME DEFAULT CURRENT_TIMESTAMP)"; 

db.execSQL("DROP TABLE " + TABLE_NAME); 

db.execSQL(TABLE_SCHEMA); 
Cuestiones relacionadas