Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB唯一索引不允许覆盖_Mongodb_Spring Data Mongodb - Fatal编程技术网

MongoDB唯一索引不允许覆盖

MongoDB唯一索引不允许覆盖,mongodb,spring-data-mongodb,Mongodb,Spring Data Mongodb,我在Mongo文档中的一个字段上创建了一个unique=true的索引。这与预期的一样——它通过覆盖现有条目来禁止重复 我希望不允许覆盖,而是在尝试插入副本时得到一个错误或异常。有没有办法做到这一点?如何使用Spring Data MongoDB实现这一点?索引注释有一个参数dropDups=true,它将为您提供所需的内容 Indexed (unique=true, dropDups=true) 通过将WriteConcern=SAFE添加到MongoTemplate配置中,我能够在违反“u

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


我希望不允许覆盖,而是在尝试插入副本时得到一个错误或异常。有没有办法做到这一点?如何使用Spring Data MongoDB实现这一点?

索引注释有一个参数dropDups=true,它将为您提供所需的内容

Indexed (unique=true, dropDups=true)

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

dropDups参数适用于在现有数据库上添加索引,并且希望删除数据库中已存在的DUP的情况。我试过了,但无法防止覆盖。