MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

So aktualisieren Sie das _id-Feld in einem Mongodb-Dokument

Ja, es ist unmöglich, weil es ist ein Primärschlüsselfeld. Wenn Sie dies tatsächlich tun möchten, dann fügen Sie eigentlich ein neues Dokument ein und entfernen das alte:

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