1

我在 MongoDB 集合中有一些带有 GUID 类型键的文档,我希望能够使用 shell 将它们复制到具有新 GUID 的新行。我试过这个:

db.schedules.find().forEach(function(x) { 
    x._id = null; 
    db.schedules.save(x); 
});

我希望_id字段在我将其设置为 null 后自动生成,但这当然是幼稚的。如果有的话,我怎么能在 shell 中生成一个新的 GUID?

更新

显然不可能从外壳生成 GUID。我最终用 C# 编写了一个迷你脚本,以便使用 Mongo C# 驱动程序。

4

1 回答 1

6

试试这个:

x._id = new ObjectId();
db.schedules.insert(x);

你也可以这样做:

delete x._id;
db.schedules.insert(x);
于 2012-04-24T05:06:57.270 回答