Sala de persistencia biblioteca. Eliminar todos

¿Cómo puedo eliminar todas las entradas de una tabla específica utilizando la Biblioteca de persistencia de habitaciones? Necesito dejar la tabla, pero no puedo encontrar ninguna información cómo hacer esto.

Solo cuando la base de datos está migrando o para cargar todas las entradas y eliminarlas 🙂

Puede crear un método DAO para hacer esto.

@Dao interface MyDao { @Query("DELETE FROM myTableName") public void nukeTable(); } 

Para una Migration , se pasa un SupportSQLiteDatabase y puede eliminar lo que desea a través de execSQL() .

Más allá de eso, puede llamar a getOpenHelper() en su RoomDatabase y obtener una SupportSQLiteDatabase de ella, una vez más llamando a execSQL() para eliminar lo que desea.

No veo una forma basada en anotaciones de borrar todas las entidades, a menos que suceda que las tenga todas en la memoria y pueda pasarlas a un método @Delete -annotated en su Dao .

 @Delete void deleteAll(Article... object); 

Podrías hacer algo como esto en tu clase DAO

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.