4

我在我的 Mongo 文档中的一个字段上创建了一个 unique=true 的索引。这按预期工作 - 它通过覆盖现有条目来禁止重复。

我想禁止覆盖,而是在尝试插入重复项时得到错误或异常。有没有办法做到这一点?我将如何使用 Spring Data MongoDB 做到这一点?

4

2 回答 2

2

通过将 WriteConcern=SAFE 添加到 MongoTemplate 配置,我能够在违反“unique=true”约束时获得异常。我处理异常并禁止覆盖。

于 2012-12-27T21:35:39.820 回答
0

索引注释有一个参数 dropDups=true ,它会给你你想要的。

Indexed (unique=true, dropDups=true)

http://static.springsource.org/spring-data/data-mongodb/docs/1.1.0.RELEASE/api/org/springframework/data/mongodb/core/index/Indexed.html

于 2012-12-26T01:13:54.853 回答