mongodb - 使用唯一复合索引更新 MongoDB 中的文档
问题描述
我在 MongoDB 中有一个具有唯一复合索引的文档。
@Document
@CompoundIndex(def = "{'field1':1, 'field2':1", unique = true)
public class MyClass implements Serializable {
@Id
private String id;
private Field1 field1;
private Field2 field2
...
}
我用Spring Data
. 每当我尝试保存两个值都重复的文档时,我会得到E11000 duplicate key error
一个适当的重复键异常。
我想让MongoDB在重复的情况下替换记录而不是抛出异常。但是两种 MongoRepository 方法都喜欢save
和insert
都没有帮助。有什么办法可以做我想做的事吗?
解决方案
推荐阅读
- javascript - 将对象推送到数组时,如何不推送相同的对象?
- c++ - What is the purpose of std::add_lvalue_reference and std::add_rvalue_reference?
- asp.net-mvc - OAUTH - 实施授权代码工作流程
- php - SQL 调试消息:2002)无法建立连接,因为目标机器主动拒绝它
- javascript - 数据表 XSLX 和 CSV 在日期字段上导出问题
- php - Symfony 4.3 PHP: How to read the cookie from a 302 redirection response?
- django - Pass extra field to serializer
- python - Is there a way to fill in missing values in a data frame in a list format as the last value of the list in the previous row?
- javascript - 我什么时候应该建立'dist'文件夹,什么时候不应该建立?
- sql - 如何在两个日期之间搜索以下数据?