Realm Update failed - Android
up vote 0 down vote favorite
I'm using realm for my android apps, So I want to update my Bill object using the same Primary key, but ended with
FATAL EXCEPTION: main Process: com.example.rikirikmen.billsplit, PID: 22045 io.realm.exceptions.RealmPrimaryKeyConstraintException: Value already exists: 1
java android realm
shareimprove this question
511513
asked Jun 8 '16 at 14:35
156
-
what do you mean ? i need to createobject? the object already created in other activity before.. i just want to update the object. – Riki Rikmen Jun 8 '16 at 15:07 -
what do you mean inside transaction ? actually realm has create a new method realm.executetransaction for replacing realm.begintransaction and commit – Riki Rikmen Jun 8 '16 at 15:37
add a comment
1 Answer
active oldest votes
up vote 0 down vote accepted
Do this:
Although if you're hesitant about saving detached objects to the Realm through copyToRealmOrUpdate()
, then use the appropriate override for createObject().
If you use createObject(clazz, primaryKey)
then you won't need copyToRealmOrUpdate()
in this case.
shareimprove this answer
edited Jun 11 '16 at 12:39
answered Jun 8 '16 at 20:04
42k13115216
-
thankyou for your advice, actually i dont know its working or not.. i just got new error Process: com.example.rikirikmen.billsplit, PID: 31338 java.lang.NullPointerException: Attempt to invoke virtual method 'boolean io.realm.RealmList.add(io.realm.RealmModel)' on a null object reference at com.example.rikirikmen.billsplit.DialogActivity$1$1.execute(DialogActivity.java:101)
– Riki Rikmen Jun 11 '16 at 11:10 -
my object are filled, i dont know where is wrong. here is the log 06-11 18:02:56.785 31338-31338/com.example.rikirikmen.billsplit I/Object: 6 true 06-11 18:02:56.785 31338-31338/com.example.rikirikmen.billsplit I/Object: 7 true 06-11 18:02:56.785 31338-31338/com.example.rikirikmen.billsplit I/Object: 8 false 06-11 18:02:56.785 31338-31338/com.example.rikirikmen.billsplit I/Object: 9 false 06-11 18:02:56.785 31338-31338/com.example.rikirikmen.billsplit I/Object: 10 false
– Riki Rikmen Jun 11 '16 at 11:10 -
The personInMenus
is null by default and I forgot to set it to be a RealmList<T>
, added modified code – EpicPandaForce Jun 11 '16 at 12:40 - 1
thankyou EpicPandaForce, you are Realm Master haha.. marked it as answer – Riki Rikmen Jun 11 '16 at 13:08 https://stackoverflow.com/questions/37705565/realm-update-failed-android