当前位置:  开发笔记 > 编程语言 > 正文

在运行时删除所有领域对象

如何解决《在运行时删除所有领域对象》经验,为你挑选了3个好方法。

在iOS上,我们可以轻松调用realm.deleteAllObjects();以删除Realm数据库中的所有对象.

我们如何在Android中实现同样的目标?



1> David Miguel..:

从Realm数据库中删除所有对象:

realm.executeTransaction(new Realm.Transaction() {
    @Override
    public void execute(Realm realm) {
        realm.deleteAll();
    }
});

从Realm数据库中删除所有对象:

realm.executeTransaction(new Realm.Transaction() {
    @Override
    public void execute(Realm realm) {
        realm.delete(Dog.class);
    }
});

删除查询结果:

final RealmResults results = realm.where(Dog.class).findAll();

realm.executeTransaction(new Realm.Transaction() {
    @Override
    public void execute(Realm realm) {
        // remove single match
        results.deleteFirstFromRealm();
        results.deleteLastFromRealm();

        // remove a single object
        Dog dog = results.get(5);
        dog.deleteFromRealm();

        // Delete all matches
        results.deleteAllFromRealm();
    }
});



2> Shripada..:

您可以通过使用结果来执行此操作 - 例如,如果我想删除所有Dog对象,我可以执行以下操作 -

// obtain the results of a query

RealmResults results = realm.where(Dog.class).findAll();

// All changes to data must happen in a transaction
realm.beginTransaction();

// Delete all matches
results.deleteAll();

realm.commitTransaction();

参考:文件



3> iamtodor..:

目前已clear()被弃用.相反,请参考您应该使用的文档results.deleteAllFromRealm()realm.deleteAll()realm.delete(Dog.class).

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有