MongoDB的update有关问题(JAVA)——如何一次更新所有的相同记录

本文介绍如何使用MongoDB的Java API实现对多个相同记录的一次性更新。重点讲解了update方法的参数设置,包括查询条件、更新操作符及multi标志的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MongoDB的update问题(JAVA)——怎么一次更新所有的相同记录
用如下这个函数:
public WriteResult update(DBObject q,
  DBObject o,
  boolean upsert,
  boolean multi)
  throws MongoException
官方API写的是:
upsert - if the database should create the element if it does not exist
multi - if the update should be applied to all objects matching

首先我的collection中有多个相同的document(只是_id不同),但是如何才能一次更新全部的相同document呢


------解决方案--------------------
1)criteria:查询条件,类似于update语句内where后面的内容
2)objNew:update的对象和一些更新的操作符(如$、$inc等),也可以理解为关系型数据库update语句内set后面的内容
3)upsert:如果不存在update的纪录,是否插入objNew这个新的document。true为插入,默认是false,不插入
4)multi:默认是false,只更新找到的第一条纪录,如果为true,按条件查出来的多条纪录全部更新。
------解决方案--------------------
1)upsert:如果不存在update的纪录,是否插入objNew这个新的document。true为插入,默认是false,不插入
2)multi:默认是false,只更新找到的第一条纪录,如果为true,按条件查出来的多条纪录全部更新。

转载于:https://www.cnblogs.com/smile361/p/3554221.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值