Cómo eliminar un registro de ORMLITE?
Necesito eliminar un registro de la base de datos de ORMLite Puedo borrar un registro por id usando como a continuación
@Override public void Delete(int id) throws SQLException { this.dao.deleteById(id); }
Pero lo que si tengo que eliminar un registro de la misma tabla no por id pero por nombre o cualquier otro campo que quiero algo como
- Consulta de ORMLite con cotización, Android
- Persistencia de una clase Collection con ORMLite en android
- Cómo utilizar correctamente claves foráneas en Android, utilizando SQLite y OrmLite
- Cómo realizar la eliminación en cascada de una clave externa usando ormlite en android
- ¿Ormlite admite la herencia?
public void Deletefromcanteen(String name,MealType mealtype) { this.dao.deletebyName(name); }
Qué consulta debería escribir usando querybuilder para borrar un registro donde name = name y mealtype = say (lunch)
He intentado algo como esto en mi clase databasehelper
public void deletefromcanteen(int id, String mealtype) { try { Dao<CanteenLog, Integer> canteenDao = getCanteen(); DeleteBuilder<CanteenLog, Integer> deleteBuilder = canteenDao .deleteBuilder(); deleteBuilder.where().eq("user_id", id).and().eq("meal", mealtype); canteenDao.delete(deleteBuilder.prepare()); } catch (Exception e) { ... } }
- La transacción de Sqlite bloquea Android ui
- Problemas con ORMLite y colecciones perezosas
- ORMLite - Consulta de campo externo
- Android - Uso de DAO de ORMLite como ContentProvider
- Configurar Gradle para ejecutar ejecutable Java en Android Studio
- La función Android andmlite like () no funciona
- Calendario .YEAR, .MONTH, DAY_OF_MONTH diferente de date.getDay () etc?
- ¿Dónde encuentro el ApplicationContext necesario para inicializar ORMLite?
deleteBuilder.where().eq("FIELD_NAME", arg); deleteBuilder.delete();
Actualizar:
Por ejemplo :
//Get helper DatabaseHelper helper = OpenHelperManager.getHelper(App.getContext(), DatabaseHelper.class); //get dao Dao dao = helper.getDao(YOUR_CLASS.class); //delete elements from table in field by arg DeleteBuilder<CanteenLog, Integer> deleteBuilder = dao.deleteBuilder(); deleteBuilder.where().eq("FIELD_NAME", arg); deleteBuilder.delete();
¡Buena suerte!
Para guardar la construcción de una consulta, puede hacer una selección para encontrar la ID, luego hacer una eliminación por ID. Thsi será sencillo si ya tiene configurada la consulta de selección para esta tabla.
Se puede hacer también así
DatabaseHelper.getInstance().getDao(YourObject.class).delete(yourObjectInstance);
- Icono de marcador personalizado de Android
- El título de android no se mostrará en la barra de herramientas