我想以java语言在rethinkdb中对对象的一个​​属性进行更改。

我尝试了这个:

Cursor curs = r.db("mytestdb").
                            table("tennis").
                            get(Constants.WORKING_PROJECT_ID).
                                getField("time").
                                changes().
                                    run(conn);
    for (Object doc : curs) {
        System.out.println(doc);
    }


但我得到this com.rethinkdb.gen.exc.ReqlQueryLogicError: Cannot convert STRING to SEQUENCE作为例外。

我真的是重新思考DB的新手。有人能帮我吗 ?

最佳答案

getField("time")获取特定的字段值,您无法订阅值。
这就是this com.rethinkdb.gen.exc.ReqlQueryLogicError: Cannot convert STRING to SEQUENCE所说的。

您可以filter要获得的更改:

Cursor curs = r.db("mytestdb").
                        table("tennis").get(Constants.WORKING_PROJECT_ID)
                        .filter(row -> row.g("new_val").g("time").ne(row.g("old_val").g("time")))
                        .changes().run(conn);

for (Object doc : curs) {

}

关于java - 一列RethinkDB的Changefeed,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46744431/

10-09 20:01