CNode

mongodb 有没有一次更新多少文档,每个文档的查找条件都不一样。

问答
Mmrlong发布于9 年前最后回复9 年前4 回复4533 浏览0 收藏
{ code:1, value='a'  },
{code:2,value='b'}

现在我方案是执行两条updateOne , 有没有办法采用方法就能执行一次,这样不会有数据不完整的情况。也就是原子操作。

updateOne({code:1},{$set:{value:'c'});
updateOne({code:2},{$set:{value:'d'});

查看回复

回复 (4)

B
brickyang#1·9 年前

好像……没有吧?updateOne() 的作用就是更新一条文档。

不是很理解你的需求点,为什么会出现数据不完整的情况?有具体点的例子吗?

B
beyond5959#2·9 年前

用 bulkWrite 吧。

M
mrlong#3·9 年前
引用 beyond5959用 bulkWrite 吧。

@beyond5959 正解。 版本好像3.2才能支持。

A
alsotang#4·9 年前

mysql的事务可以。

mongodb bulkWrite 的话可以考虑用用,不过也只是减少网络io,提高效率,没法保证多条document的原子性。

参与回复
登录后即可参与回复。登录