mongodb - 部分更新删除了 mongodb 中的所有其他字段
问题描述
部分更新删除了数据库中 mongodb 中的所有其他字段:
{
"demo": [
{
"id": "ABC123",
"order": [
{
"order": 2,
"field": "fieldValue"
}
],
"items": [
"Story"
],
"statusList": [
"In progress"
]
}
]
}
在java代码中:
collection.updateOne(Filters.eq("id", "ABC123"), new Document("$set", doc));
// doc 是从 Model 类创建的文档
我文档我只为订单传递值。运行 Java 代码后,由于我的 Model 类,它会将 items 和 statusList 更新为 null 我该怎么办?提前致谢
解决方案
如果你只想更新order
,你可以这样做
collection.updateOne(
Filters.eq("id", "ABC123"),
new Document("$set", new Document("order", doc.order))
);
仅包括您要更新的字段是使其成为部分更新的原因。
推荐阅读
- swift - 是否可以从 AppStore 访问 iOS 应用程序的控制台日志?
- python - 从另一个数组分配一个数组 [加密器问题]
- java - 定义返回列表的 REST 端点
- powershell - Powershell New-Service 授予权限被拒绝
- xamarin - 如何从 Xamarin.ios 中的超链接 UITextView 控件中删除下划线?
- javascript - SharePoint 2013 - 使用 JavaScript 覆盖字段
- wpf - 基于 XAML 中的属性将样式应用于按钮
- mysql - 引导表不显示数据
- python - 在 NLTK 中使用 shif-reduce 解析器尽可能多地解析句子?
- php - 尝试从 json url 打印特定部分