gpt4 book ai didi

mongodb - 更新 MongoDB 集合中所有文档中的元素

转载 作者:IT老高 更新时间:2023-10-28 13:37:22 26 4
gpt4 key购买 nike

我正在运行以下查询,目的是更新集合中所有现有文档中的单个元素。我基本上是在尝试将它们的值清除为“0”。

代码如下:

MongoCollection collection = db.GetCollection(DataAccessConfiguration.Settings.CollectionName);
var query = Query.Exists("ElementName", true);
var update = Update.Set("ElementName", "0");
collection.Update(query, update);

它只更新一个文档。

如何一次更新所有元素?

最佳答案

默认情况下,MongoDB 中的更新影响 0 或 1 个文档(仅当查询说明符不匹配任何内容时为 0)。要更新所有文档,您需要传递 UpdateFlags.Multi 作为第三个参数 Update。还有一个 4 参数版本的 Update 接受“安全模式”标志作为第四个参数。

(安全模式将 getLastError 命令与更新捆绑在一起,并导致驱动程序等待,直到服务器确认写入已成功。安全模式有多种选项将等待来自的确认如果您使用的是副本集,则多台服务器只会等待一段时间,然后返回错误等)。

还请务必see the C# driver documentation有关 API 的详细信息。

关于mongodb - 更新 MongoDB 集合中所有文档中的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8631980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com