Java 无法将数据保存到Android
我是领域数据库的新手。我想将数据保存到域中,但无法保存,即使我输入的数据尚不存在 例如: 首先,我输入数据OA作为afdeling,001作为Blok,01作为Group Sample,1作为Pokok ke。保存成功 其次,我将数据OA输入为afdeling,001输入为Blok,01输入为Group Sample,2输入为Pokok ke。保存成功 第三,我输入数据OB作为afdeling,002作为Blok,01作为Group Sample,2作为Pokok ke。未能保存数据。数据已存在。即使我输入的数据还不存在 这是检查数据是否已存在的代码:Java 无法将数据保存到Android,java,android,realm,Java,Android,Realm,我是领域数据库的新手。我想将数据保存到域中,但无法保存,即使我输入的数据尚不存在 例如: 首先,我输入数据OA作为afdeling,001作为Blok,01作为Group Sample,1作为Pokok ke。保存成功 其次,我将数据OA输入为afdeling,001输入为Blok,01输入为Group Sample,2输入为Pokok ke。保存成功 第三,我输入数据OB作为afdeling,002作为Blok,01作为Group Sample,2作为Pokok ke。未能保存数据。数据已存在
public <E extends RealmModel> boolean isParentIdExist(Class<E> eClass, String value) {
E data = mRealm.where(eClass).equalTo("parent_id", value).findFirst();
return data != null;
}
public <E extends RealmModel> boolean isPokokExist(Class<E> eClass, String value) {
E data = mRealm.where(eClass).equalTo("pokok_ke", value).findFirst();
return data != null;
}
public <E extends RealmModel> boolean isAfdelingExist(Class<E> eClass, String value) {
E data = mRealm.where(eClass).equalTo("afdeling", value).findFirst();
return data != null;
}
public <E extends RealmModel> boolean isBlokExist(Class<E> eClass, String value) {
E data = mRealm.where(eClass).equalTo("blok", value).findFirst();
return data != null;
}
public <E extends RealmModel> boolean isGroupSampleExist(Class<E> eClass, String value) {
E data = mRealm.where(eClass).equalTo("group_sample", value).findFirst();
return data != null;
}
这是ModelAddTransaction:
class ModelAddTransaction extends RealmObject {
@PrimaryKey
private String id;
private String parent_id;
private String date;
private String afdeling;
private String pokok_ke;
}
设置项目并使用此代码插入数据
public void saveData() {
realm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
Number id = realm.where(AddToCartRealmModel.class).max("productID");
int key = (id == null) ? 1 : id.intValue() + 1;
AddToCartRealmModel addToCartModel = realm.createObject(AddToCartRealmModel.class, key);
try {
if (packageModel != null) {
realm.beginTransaction();
addToCartModel.setPackageName(packageModel.getServiceName());
addToCartModel.setProductPrice(packageModel.getPrice());
realm.insertOrUpdate(addToCartModel);
realm.commitTransaction();
} else {
System.out.println("Error");
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
finally {
if(realm!=null){
realm.close();
}
}
}
});
}
public void saveData() {
realm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(Realm realm) {
Number id = realm.where(AddToCartRealmModel.class).max("productID");
int key = (id == null) ? 1 : id.intValue() + 1;
AddToCartRealmModel addToCartModel = realm.createObject(AddToCartRealmModel.class, key);
try {
if (packageModel != null) {
realm.beginTransaction();
addToCartModel.setPackageName(packageModel.getServiceName());
addToCartModel.setProductPrice(packageModel.getPrice());
realm.insertOrUpdate(addToCartModel);
realm.commitTransaction();
} else {
System.out.println("Error");
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
finally {
if(realm!=null){
realm.close();
}
}
}
});
}