更新 MongoDB 的最快方法是 update() 還是 save()?


最快的更新方法是 update()。讓我們建立一些帶有文件的集合,看看 update() 如何工作 -

> db.demo320.insertOne({"Name":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ee51f8647eb59e562066")
}
> db.demo320.insertOne({"Name":"Robert"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ee55f8647eb59e562067")
}
> db.demo320.insertOne({"Name":"Mike"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ee59f8647eb59e562068")
}
> db.demo320.insertOne({"Name":"Sam"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e50ee5bf8647eb59e562069")
}

在集合中使用 find() 方法顯示所有文件 -

> db.demo320.find();

這將生成如下輸出 -

{ "_id" : ObjectId("5e50ee51f8647eb59e562066"), "Name" : "Chris" }
{ "_id" : ObjectId("5e50ee55f8647eb59e562067"), "Name" : "Robert" }
{ "_id" : ObjectId("5e50ee59f8647eb59e562068"), "Name" : "Mike" }
{ "_id" : ObjectId("5e50ee5bf8647eb59e562069"), "Name" : "Sam" }

以下是 update() 的查詢 -

> db.demo320.update({Name:"Mike"},{$set:{Name:"Bob"}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

在集合中使用 find() 方法顯示所有文件 -

> db.demo320.find();

這將生成如下輸出 -

{ "_id" : ObjectId("5e50ee51f8647eb59e562066"), "Name" : "Chris" }
{ "_id" : ObjectId("5e50ee55f8647eb59e562067"), "Name" : "Robert" }
{ "_id" : ObjectId("5e50ee59f8647eb59e562068"), "Name" : "Bob" }
{ "_id" : ObjectId("5e50ee5bf8647eb59e562069"), "Name" : "Sam" }

更新日期:02-Apr-2020

158 次瀏覽

開啟你的 職業生涯

透過完成課程獲得證書

開始
廣告