sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur man uppdaterar _id-fältet i ett mongodb-dokument

Ja det är omöjligt eftersom det är ett primärnyckelfält. Om du verkligen vill göra detta så är det du faktiskt gör att infoga ett nytt dokument och ta bort det gamla:

db.account_data.find({"_id" : "1232014"}).forEach(function(doc) {
    var oldId = doc._id;
    var doc._id = doc._id + doc.country;
    db.collection.remove({ _id: oldId });
    db.collection.save(doc);
});



  1. Mongodb - är tillförlitlighetsproblem fortfarande betydande?

  2. Konsekvenser av att använda $unwind på kapslade arrayer?

  3. Mongodb-anslutningen i PHP fungerar inte

  4. MongoDB och Mongoose:Nested Array of Document Reference IDs