2013-01-24 46 views

回答

3

我发现,最好的解决办法是克隆每个每个对象到另一个分配给_id一个的ObjectId值,然后删除与所有对象整数为_id。我没有在shell下:

// $type: 16 means int32 
> db.Roles.find({_id: {$type: 16}}).forEach(function (x) { 
      x._id = ObjectId(); 
      db.Roles.save(x); 
     }) 
> db.Roles.remove({_id: {$type: 16}}) 
+2

是啊,这可能是最好的办法,当然这样你就不得不再次写出你不能更新'_id'领域。 – Sammaye

相关问题