微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

3 MongoDB update

  更新又三个方法   mongodb提供了很多操作符用于修改制定的字段,比如"$set"。 结构如下: { <update operator>: { <field1>: <value1>, ... }, <update operator>: { <field2>: <value2>, ... }, ... }   一些更新操作符,如$set,将在字段不存在的情况下创建字段。有关详细信息,请参阅个别更新操作符参考。   更新单个文档 下面的示例在库存集合上使用db.collection.updateOne()方法来更新第一个文档,其中item等于“paper” db.inventory.updateOne( { item: "paper" }, { $set: { "size.uom": "cm", status: "P" }, $currentDate: { lastModified: true } } ) 使用$set操作符更新size.uom和status的值。 使用$currentDate操作符将lastModified字段的值更新为当前日期。如果lastModified字段不存在,$currentDate将创建该字段。详情请参见$currentDate。   更新多个文档 db.inventory.updateMany( { "qty": { $lt: 50 } }, { $set: { "size.uom": "in", status: "P" }, $currentDate: { lastModified: true } } ) 类似更新单个文档,只是匹配条件不同   注意: 1.MongoDB中的所有写入操作都是在单个文档的级别的原子。有关MongoDB和Atomicity的更多信息,请参阅原子性和事务。 2._id不允许修改。一旦设置,您就不能更新id字段的值,也不能用具有不同id字段值的替换文档替换现有文档。 3.对于写操作,MongoDB保留文档字段的顺序,以下情况除外: 3.1.id字段总是文档中的第一个字段。 3.2.包括重命名字段名的更新可能会导致文档中字段的重新排序。 4.对于写入安全,您可以指定MongoDB以进行写入操作所请求的确认级别。有关详细信息,请参阅写安全。     MongoDB提供了以下方法来更新集合中的文档:
db.collection.updateOne() 即使多个文档可能匹配指定的筛选器,但最多只更新一个匹配指定筛选器的文档。
db.collection.updateMany() 更新与指定筛选器匹配的所有文档。
db.collection.replaceOne() 即使多个文档可能匹配指定的筛选器,但最多只替换匹配指定筛选器的单个文档。
db.collection.update() 更新或替换与指定筛选器匹配的单个文档,或更新与指定筛选器匹配的所有文档。认情况下,db.collection.update()方法更新单个文档。要更新多个文档,请使用multi选项。
  以下方法也可以更新集合中的文档:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐