当前位置: 首页 > 知识库问答 >
问题:

不使用Azure Cosmos DB的Mongo API的Upsert

干永丰
2023-03-14
 Bulk.find({"xyz":23}).upsert().update({$set : 5465}); 

 Bulk.execute(function (err, data) {});

共有1个答案

怀宇
2023-03-14

是的,根据doc MongoDB查询语言支持,cosmos db mongo API不支持upsert()命令。据我所知,到目前为止,这里没有捷径。您需要封装方法来确定文档是否存在,然后决定插入或更新。

或者,只是声明Cosmos Document DB SDK支持upsert方法。请参考案例:如何使用Azure DocumentDB执行UPSERT?
Cosmos Document DB是一个很好的选择,如果您可以进行数据迁移。

希望对你有帮助。

 类似资料:
  • 问题内容: 在SQL中使用不同的命令是一种好习惯吗?独特命令有什么缺点吗? 问题答案: 这 完全 取决于 您的用例。 在某些情况下很有用,但可能会被过度使用。 缺点主要是增加了查询引擎执行排序的负担(因为它需要将结果集与其自身进行比较以删除重复项),并且可以用来掩盖数据中的问题- 如果您获取重复项,则可能您的源数据有问题。 命令本身并不是天生的好坏。您可以使用螺丝刀锤打钉子,但这并不意味着它是个好

  • 问题内容: 是否可以在 没有 任何模板引擎的 情况下 使用express ? 问题答案: 更新 有些人可能担心sendFile仅提供客户端缓存。有多种方法有服务器端缓存,并与OP的问题,一个保持直列可以发送回只是文字太发送: 以下是3年前的原始答案: 对于正在寻找PavingWays替代答案的任何人,也可以这样做: 无需写:

  • A Zen student went up to a hot dog vendor and said: "Make me one with everything". — Joke 环境背景很重要。 如果你想对 Puppet 的配置清单在应用到生产环境之前先进行测试, 你可以使用 Puppet 的 environment 特性来做到。 这可以让你根据环境应用不同的配置清单来设置客户机。例如,你可以定

  • 这种方法本质上是不安全的。使用停止线程会导致它解锁已锁定的所有监视器(这是未经检查的异常沿堆栈向上传播的自然结果)。如果以前由这些监视器保护的任何对象处于不一致的状态,则损坏的对象将对其他线程可见,从而可能导致任意行为。[...] 甚至有一整篇文章提供了更详细的。(尤其是在到达顶部时是静默的,即使您防范它,也无法防范。) 总的来说,我同意这篇文章所担心的问题,并同意StackOverflow相关问

  • 问题内容: 我发现这段代码的工作方式是,我可以以编程方式创建richfaces下拉菜单。但是不推荐使用某些代码。谁能告诉我要放什么而不是不赞成使用的电话? 谢谢 不推荐使用的代码行是: 问题答案: javadocs明确指出: 不推荐使用 。通过调用getExpressionFactory()然后 ExpressionFactory.createMethodExpression(javax.el.E

  • 我试图将我的项目升级到一些最新版本,但由于项目中的一些依赖项尚未更新,我无法获得空安全性。 我已经求助于sdk版本2.10,同时我更新了所有核心包,解决了所有突破性的更改。一些不推荐的更改(如FlatButton到TextButton,尚未解决)。 我在构建解决方案时遇到了几个问题,在咨询了一些旧的Stack帖子后,我拼凑了gradle文件更新,升级到Android Studio等... 但是,当