我正在尝试使用update
whiwleupsert
提供我自己的_id
作为密钥。
事实证明,它仅在我使用时才有效insert
,如果upsert:true
随更新提供,则新插入的文档会获得 Mongo 的自动生成的id
.
见下图:
PRIMARY> db.internal.update({_id: "my_id"},{ "value": "xyz"}, {upsert:true})
PRIMARY> db.internal.find()
{ "_id" : ObjectId("50c6cbb21d8b512bc0fe9576"), "value" : "xyz" }
PRIMARY> db.internal.insert({_id: "my_id2", "value": "xyz"})
PRIMARY> db.internal.find()
{ "_id" : ObjectId("50c6cbb21d8b512bc0fe9576"), "value" : "xyz" }
{ "_id" : "my_id2", "value" : "xyz" }
这是功能还是错误?
根据我在Mongo's docs中看到的内容,这将起作用