我知道当您尝试将文档插入不存在的集合时,MongoDB 将动态创建一个集合。我的问题是:如何设置默认选项,以便集合在动态创建时具有我想要的选项?
问问题
23 次
2 回答
1
我不认为你能做到这一点。您的选择是:
- 如果模式是动态但可预测的,请预先创建集合。
- 在插入之前列出现有集合,如果新集合尚不存在,则使用正确的选项自行创建新集合。
- 不要使用动态集合,而是将动态部分作为共享集合中单个文档的属性。
于 2020-07-08T16:18:02.863 回答
0
我选择围绕 mongoc_database_get_collection() 编写一个包装器。向 mongo 服务器发出额外的往返请求以查看集合是否已存在,会产生一些额外的开销。如果没有,包装器会使用我想要的选项创建它并返回新集合。如果集合已存在,则包装器返回现有集合。
于 2020-07-09T16:12:18.197 回答