Realm and auto increment Behavior (Android)

后端 未结 8 2103
野的像风
野的像风 2020-12-14 16:22

I\'m trying to get data from Realm using an ID as a reference. However, when querying for an ID, I\'ve found that Realm is giving me the same ID for all elements (ID of 0).

8条回答
  •  [愿得一人]
    2020-12-14 16:43

    //generates primary key
        public static int getNextKey(RealmQuery realmQuery, String fieldName) {
            try {
                Number number = realmQuery.max(fieldName);
                if (number != null) {
                    return number.intValue() + 1;
                } else {
                    return 1;
                }
            } catch (ArrayIndexOutOfBoundsException e) {
                return 1;
            }
        }
    

    Example

    int id = RealmDbHelper.getNextKey(realm.where(RealmDocument.class), RealmDocument.FIELD_DOCUMENT_ID)
        realmObject.setId(id);
        realm.insert(realmObject);
    

提交回复
热议问题