什么在mongodb中创建默认的ObjectID?

时间:2017-06-05 15:58:28

标签: mongodb

MongoDB的新功能。浏览文档。

来自https://docs.mongodb.com/manual/reference/method/db.collection.insert/#id-field
如果文档没有指定_id字段,那么MongoDB将在插入之前添加_id字段并为文档指定唯一的ObjectId。大多数驱动程序创建一个ObjectId并插入_id字段,但如果驱动程序或应用程序没有,mongod将创建并填充_id。

这里说MongoDB将创建_id。

来自https://docs.mongodb.com/manual/reference/method/db.collection.save/?_ga=2.24854906.1181826191.1496665143-146886871.1493019056#save-a-new-document-without-specifying-an-id-field
在插入期间,shell将创建具有唯一ObjectId值的_id字段,由插入的文档验证。

在这里,它说Mongo shell。

是mongo shell创建默认的ObjectID还是mongod?希望有人能澄清一下!

2 个答案:

答案 0 :(得分:1)

如果客户端未提供_id,则MongoDB服务器将执行此操作。 shell只是另一种类型的客户端;它为插入的文档提供_id,因此服务器不需要。但是其他驱动程序/客户端可能没有,所以在那些情况下服务器会这样做。

答案 1 :(得分:0)

如果客户端没有为文档创建Id,mongo服务器将在创建新文档时创建_id。