当数据库中的一行被更新时,flowable不会发出值

时间:2018-07-02 10:53:33

标签: android android-sqlite android-room

我有以下DAO方法

@Query("SELECT * FROM DBSCT")
Flowable<DBSCT> getAllDBSCT();

这是上述方法的实现

AppDatabase.getAppDatabase(context)
            .getCustomerDao()
            .getAllDBSCT()
            .distinctUntilChanged()
            .subscribeOn(Schedulers.io())
            .observeOn(Schedulers.io())
            .subscribe(new Consumer<DBSCT>() {
                @Override
                public void accept(DBSCT dbscts) throws Exception {
                    if (dbscts != null) {
                        Log.i(TAG, "accept: ");
                    }
                }
            });

每当我在DBSCT表中插入一条新记录时,我的flowable就会发出第一条记录(但是我在该表中将始终有一条记录,因此我不会插入,而是将始终使用更新查询)。在更新查询中,我将不断更新同一条记录,但flowable永远不会发出值。

0 个答案:

没有答案