¿Cuál es la mejor manera en Android para eliminar todas las filas de una tabla
Tengo una bruja WCF proporciona algunos datos JSON y luego guardarlo en la base de datos local. Funciona bien Tengo una bruja Actividad llena los datos de una base de datos local a una bruja listview funciona bien.
public void fillData() { // Fields from the database (projection) // Must include the _id column for the adapter to work String[] from = new String[] { TodoTable.COLUMN_SUMMARY }; // Fields on the UI to which we map int[] to = new int[] { R.id.label }; getLoaderManager().initLoader(0, null, this); adapter = new SimpleCursorAdapter(this, R.layout.todo_row, null, from, to, 0); lw.setAdapter(adapter); }
Lo que no puedo averiguar es cuál sería la mejor manera de eliminar todas las filas antes de una acción de sincronización de un WCF.
- Cómo obtener el valor de la columna Timestamp en android mediante cursor
- ¿Está bien confiar en SQLiteConstraint y dejar SQLite hacer la comprobación para mí? ¿Hay una trampa?
- Acceso a los datos principales de iOS desde Android
- SQLite selecciona todos los registros de hoy y día anterior
- Cómo insertar a granel en sqlite en android
Podría hacer esto consiguiendo todas las identificaciones de la base de datos y luego encontrar la fila URI y luego usar:
getContentResolver().delete(uri, null, null)
Sólo creo que tiene que haber una mejor manera que he visto muchos ejemplos en la red que utiliza la clase DbHelper, pero no puedo averiguar cómo acceder a la clase dbHelper de la actividad o sobre el ContentProvider
Espero que tenga sentido
- SQLCipher para Android getReadableDatabase () Sobrehéroe
- Cómo comprobar si ya existe un valor en la base de datos en Android
- ¿Cómo pasar el valor de la cadena separada por coma en la consulta SQL?
- Java.lang.StringIndexOutOfBoundsException: index = 0 length = 0 en obtener la base de datos sqlite
- Android: La tabla no tiene ninguna columna llamada "nombre de variable" MySql Error de base de datos
- Error al leer la fila 0, columna 0 de una CursorWindow que tiene 0 filas, 64 columnas
- Datos de exportación de Android a csv
- Seleccione sólo los descendientes directos de la tabla con una ruta materializada
Utilizando DatabaseHelper
puede hacer lo siguiente:
dbHelper = new DatabaseHelper(context); database = dbHelper.getWritableDatabase(); public void clearTable() { database.delete(TABLE, null,null); }
Tratar
<your-SQLite-instance>.execSQL("DELETE FROM <table_name>");
Que eliminará todas las filas de <table_name>
Intente utilizar este código para eliminar todas las filas de una tabla:
database.delete(tablename, null,null);
Basta con reemplazar la database
de database
por su nombre db y tablename
por la tabla que desea eliminar las filas
Si sólo desea eliminar todas las filas de una tabla:
drop table if exists "tablename"
A continuación, vuelva a crear la tabla con las columnas adecuadas. Yo personalmente encuentro mucho más fácil hacerlo de esta manera.
- ¿Cómo ocultar el icono de acción compartida (que utiliza más) cerca del proveedor de acciones compartidas?
- ¿Cómo crear notificaciones que no desaparecen cuando se hace clic en Android?