MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come aggiornare il campo _id in un documento mongodb

Sì, è impossibile perché lo è un campo chiave primaria. Se vuoi davvero farlo, quello che stai facendo è inserire un nuovo documento e rimuovere quello vecchio:

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);
});