MongoDB在构建索引后插入文档?

时间:2015-01-13 15:20:19

标签: mongodb

考虑我已经插入了这种格式的十几个文档:

{"name":"some one", "age":32}

然后我使用“unique”参数在“name”属性上构建索引。

当我插入相同格式的新文档时,是否需要在每次插入后重建名称上的索引,或者这是自动化的?同样,在使用相同名称的新插入时,由于唯一的参数,旧文档是否会被删除?或插入不会发生?

使用mongo 2.4.12 btw。

干杯

1 个答案:

答案 0 :(得分:1)

不,你不需要再次创建索引

如果您使用

db.collection.ensureIndex( { field_to_be_index: 1 }, { unique: true, dropDups: true } )

它将删除创建索引的重复文档。

有关详细信息,请参阅重复删除的完整文档。

警告:正如文件所说, 指定{dropDups:true}可能会从数据库中删除数据。请谨慎使用。

创建唯一索引后,如果您使用非唯一字段进行索引,则会收到duplicate key error index: ...错误

More info about unique index