How should i update a already existing value using realm DB in android?
I have been trying to update it but it is adding as a new value only not overwritting it
clear() method that . deleteAllFromRealm() is now the correct method to use.
What is Realm? Realm is an object database that is simple to embed in your mobile app. Realm is a developer-friendly alternative to mobile databases such as SQLite and CoreData. Before we start, create an Android application.
The right way of deleting your entire Realm (schema) is to use : Realm realm = Realm. getDefaultInstance(); realm. beginTransaction(); // delete all realm objects realm.
Another way to update an existing object with all its fields in your Realm DB is using the method realm.copyToRealmOrUpdate()
:
Object obj = new Object(); obj.setField1(field1); obj.setField2(field2); realm.beginTransaction(); realm.copyToRealmOrUpdate(obj); realm.commitTransaction();
If your object has a Primary Key, this method will update the object automatically without duplicate objects :)
More info: copyToRealmOrUpdate()
You can use insertOrUpdate method to do this.Hope this helps
Realm.getDefaultInstance().executeTransaction(new Realm.Transaction() { @Override public void execute(Realm realm) { objectToEdit.setNewValue("string"); realm.insertOrUpdate(); } });
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With