在一个请求中重新思考DB的多个查询



我试图在向服务器发出的单个请求中执行多个RQL命令,但可能没有成功。我试过r.union,但它只适用于序列。我真正想要的:

[r.db(..).table(..).get(id1).delete(),
 r.db(..).table(..).get(id2).delete(),
 r.db(..).table(..).insert(...)].run_all_at_once

有办法做到这一点吗?

谢谢!

您也可以使用do

r.do(
  r.table('test').insert({value1: "Hey"}),
  r.table('test').insert({value2: "Ho"})
).run(conn);
  • 查询从最后到第一进行评估
  • 响应将是最后一个查询的结果

您可以进行

r.expr( [r.db(...).table(...).get(id1).delete(), 
r.db(...).table(...).get(id1).delete(), 
r.db(...).table(...).insert(...) ] ).run(conn)

请注意,delete方法没有获取参数。

相关内容

  • 没有找到相关文章

最新更新