MongoDB
 Computer >> コンピューター >  >> プログラミング >> MongoDB

MongoDBの_idフィールドを更新するにはどうすればよいですか?


_idフィールドを直接更新することはできません。つまり、更新するスクリプトを記述します。まず、ドキュメントを使用してコレクションを作成しましょう-

> db.updatingIdFieldDemo.insertOne({"StudentName":"Chris"});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5ce271bb36e8b255a5eee949")
}

以下は、find()メソッドを使用してコレクションからすべてのドキュメントを表示するためのクエリです-

> db.updatingIdFieldDemo.find();

これにより、次の出力が生成されます-

{ "_id" : ObjectId("5ce271bb36e8b255a5eee949"), "StudentName" : "Chris" }

以下は、MongoDBの_idフィールドを更新するためのクエリです-

> var myDocument=db.updatingIdFieldDemo.findOne({StudentName:"Chris"});
> myDocument._id = 101;
101
> db.updatingIdFieldDemo.save(myDocument);
WriteResult({ "nMatched" : 0, "nUpserted" : 1, "nModified" : 0, "_id" : 101 })

> db.updatingIdFieldDemo.remove({_id:ObjectId("5ce271bb36e8b255a5eee949")});
WriteResult({ "nRemoved" : 1 })
>

もう一度記録を確認しましょう-

> db.updatingIdFieldDemo.find();

これにより、次の出力が生成されます。 _id −

が正常に更新されました
{ "_id" : 101, "StudentName" : "Chris" }

  1. MongoDBのレコードを更新するにはどうすればよいですか?

    レコードを更新するには、_idに基づいて更新する必要があります。ドキュメントを使用してコレクションを作成しましょう- > db.demo458.insertOne( {_id:101,"Name":"David" } ); { "acknowledged" : true, "insertedId" : 101 } > db.demo458.insertOne( {_id:102,"Name":"Chris" } ); { "acknowledged&qu

  2. MongoDBクエリを実行して、特定のフィールド値のみを更新するにはどうすればよいですか?

    例を見て、ドキュメントを使用してコレクションを作成しましょう- > db.demo557.insertOne({Name:"Chris"});{    "acknowledged" : true, "insertedId" : ObjectId("5e8f28e954b4472ed3e8e864") } > db.demo557.insertOne({Name:"David"});{    "acknowledged" :