首页 > 解决方案 > 我需要从现有领域数据库中读取数据

问题描述

我有一个现有的领域数据库,它已作为资产传递给领域对象并配置为默认领域。我还有两个模型分类,它们必须填充从现有数据库中检索到的数据。我不知道如何读取数据,需要采取哪些步骤?

首先,我必须使用以下方法为我现有的数据库提供领域:

Realm.init(this);
    RealmConfiguration realConfig = new RealmConfiguration.Builder()
            .assetFile("assets\\databases.realm")
            .readOnly()
            .build();
    Realm.setDefaultConfiguration(realConfig);

然后用于读取数据;

Realm.init(this);
    Realm realm = Realm.getDefaultInstance();
    realm.executeTransaction(new Realm.Transaction() {
        @Override
        public void execute(Realm realm) {
           RealmResults<Word> words = realm.where(Word.class).equalTo("id",1976).findAll();
        }
    });
    Word testWord = realm.where(Word.class).findFirst();

标签: javaandroidrealm

解决方案


您可以在这样的函数中访问结果:

@Override
        public void execute(Realm realm) {
        RealmResults<Word> words = realm.where(Word.class).equalTo("id",1976).findAll();
        displayQueriedResults(words);
        }


displayQueriedResults(RealmResults<Word> words){
    for(Word word : words){
        int i = word.getId(); //do whatever with your result
        String s = word.getName();
        ...
        ...
    }
}

推荐阅读