Mongo DB中的保存和插入有什么区别?两者看起来都一样
db.users.save({username:"google",password:"google123"}) db.users.insert({username:"google",password:"google123"})
保存与插入:
在您给定的示例中,行为基本相同。
save如果使用“_id”参数传递,则行为不同。
save
对于保存,如果文档包含_id,它将在_id字段上查询集合,如果没有,它将插入。
_id
如果具有指定 _id 值的文档不存在,则 save() 方法将使用文档中的指定字段执行插入。 如果存在具有指定 _id 值的文档,则 save() 方法执行更新,将现有记录中的所有字段替换为文档中的字段。
如果具有指定 _id 值的文档不存在,则 save() 方法将使用文档中的指定字段执行插入。
如果存在具有指定 _id 值的文档,则 save() 方法执行更新,将现有记录中的所有字段替换为文档中的字段。
保存与更新 :
update 修改与您的查询参数匹配的现有文档。如果没有这样的匹配文件,那就是upsert图片。
update
upsert
upsert : false
upsert : true
save : 不允许任何查询参数。如果_id存在并且有相同的匹配文档_id,它将替换它。当没有指定_id/没有匹配的文档时,它将文档作为新文档插入。