Declaración de actualización en Realm
Tengo la tabla del formulario de VisitingCardPOJO
. Quiero actualizar sola entrada decir donde no = 3
VisitingCardPOJO.java
- Cómo truncar todas las tablas en el reino de Android
- Reino se cierra
- Consulta de dominio con Lista
- Realm Android - ¿Cómo puedo convertir RealmResults a una matriz de objetos?
- Cómo ver mi archivo Realm en el Realm Browser?
public class VisitingCardPOJO extends RealmObject { @PrimaryKey private int no; private String name; private String address; public int getNo() { return no; } public void setNo(int no) { this.no = no; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } }
- No public RealmResults <E> Constructor?
- Tareas del grader del reino
- Cómo utilizar Realm asObservable con el operador concat () de RxJava?
- Adición de objetos independientes a una RealmList
- Compruebe dos campos con la base de datos Realm
- Cómo establecer la marca de tiempo actual para cada inserción y actualizar la fila en el reino de Android
- ¿Cómo instalar el reino como una dependencia gradle?
- Realm Query es posible usar IN?
Encontré la solución como y funcionó
public void updateNewCard(Realm realm, VisitingCardPOJO card) { realm.beginTransaction(); VisitingCardPOJO toEdit = realm.where(VisitingCardPOJO.class) .equalTo("no", card.getNo()).findFirst(); toEdit.setName(card.getName()); toEdit.setAddress(card.getAddress()); realm.commitTransaction(); }
Ver demostración para Realm
La manera correcta de hacerlo es esta
public void updateNewCard(Realm realm, VisitingCardPOJO card) { final int no = card.getNo(); realm.executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { VisitingCardPOJO toEdit = realm.where(VisitingCardPOJO.class) .equalTo("no", no).findFirst(); if(toEdit != null) { toEdit.setName(card.getName()); toEdit.setAddress(card.getAddress()); } } }); }
- OnCreate () no es llamado por getWritableDatabase ()
- Servicio de Android e hilo de la interfaz de usuario