我有类似
的代码db.myColletion.update({'_id':ObjectId("...")}, {'$set': {'state': 'CA'}})
是在原子操作之上吗?
我是否需要在单个文档上使用findAndModify来实现原子性?
答案 0 :(得分:2)
是的,MongoDB的所有写操作都是atomic在单个文档的级别。
update
和findAnyModify
之间的主要区别在于后者还为您提供原始或更新的文档。
答案 1 :(得分:1)
请参阅the docs for findAndModify,特别是comparisons with the update method上的部分。
修改单个文档时,findAndModify和update()方法都会自动更新文档。