【问题标题】:Default options for dynamic MongoDB collections动态 MongoDB 集合的默认选项
【发布时间】:2020-07-08 15:54:54
【问题描述】:

我知道,当您尝试将文档插入不存在的集合时,MongoDB 会动态创建一个集合。我的问题是: 如何设置默认选项,以便集合在动态创建时具有我想要的选项?

【问题讨论】:

    标签: mongodb mongo-collection


    【解决方案1】:

    我认为你做不到。您的选择是:

    1. 如果模式是动态但可预测的,请预先创建集合。
    2. 在插入之前列出现有集合,如果新集合尚不存在,则使用正确的选项自行创建新集合。
    3. 不要使用动态集合,而是将动态部分作为属性放在共享集合中的各个文档中。

    【讨论】:

      【解决方案2】:

      我选择围绕 mongoc_database_get_collection() 编写一个包装器。向 mongo 服务器发出额外的往返请求以查看集合是否已存在,会产生一些额外的开销。如果没有,包装器会使用我想要的选项创建它并返回新集合。如果集合已存在,则包装器返回现有集合。

      【讨论】:

        猜你喜欢
        • 2021-12-24
        • 2021-09-17
        • 1970-01-01
        • 1970-01-01
        • 2014-12-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多