dbflow 3.x 批量操作

dbflow 3.x的版本如何进行 批量删除(异步和同步)和保存

阅读 5.2k
2 个回答

批量保存用事务去处理,官方有提供同步事务和异步事务,具体看自己选择,至于删除,没有发现有异步方法,我一般这样用:

    //删除
    public synchronized void clearAll() {
        SQLite.delete().from(Model.class).execute();
    }
    
    //批量插入
    //同步事务
    FlowManager.getDatabase(YourDatabase.class)
                .executeTransaction(new ProcessModelTransaction.Builder<YourModel>(
                        BaseModel::insert
                ).addAll(YourModeList).build());
    //异步事务
    FlowManager.getDatabase(YourDatabase.class)
                .beginTransactionAsync(new ProcessModelTransaction.Builder<YourModel>(
                        BaseModel::insert
                ).addAll(YourModelList).build())
                .error(your log)
                .success(your log)
                .build()
                .execute();
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题