我可以在mongodb文档中禁用ObjectId吗?

6rqinv9w  于 2023-10-16  发布在  Go
关注(0)|答案(3)|浏览(159)

我有大量的数据记录,每一个都有唯一的ID在我的域。那么我可以在mongodb中的插入文档中禁用(不保存)ObjectID吗?这将占用大量的磁盘空间...

wmomyfyw

wmomyfyw1#

_id字段是强制性的,您需要为每个文档提供一个唯一的值,但它不必是ObjectID。您也可以使用整数值来节省保存空间,但是您需要确保每个文档的值都是唯一的。

sczxawaw

sczxawaw2#

使用唯一的ID从您的域作为_id..如果你不提_id。Mongo自动分配ObjectId。ObjectId的类型为ObjectID。

368yc8dk

368yc8dk3#

是的,你可以通过两种方式在mongodb中禁用auto ObjectId(autoIndexId)。
1.如果您想禁用_id字段的自动生成,您可以在插入文档时显式地将其设置为您选择的值。举例来说:

db.demoCollection.insertOne({ _id: "myCustomID", name: "John Wick", age: 30 });

2.或者你可以通过在你的模式中定义这个来关闭它。

{ collection: 'youCollection', autoIndexId: false}.

About autoindexid in official doc.

相关问题