【问题标题】:How to drop index using mongocxx driver如何使用 mongocxx 驱动程序删除索引
【发布时间】:2019-08-09 03:56:44
【问题描述】:

我的程序提供了一个可配置的 ttl。所以每次程序启动时都要检查ttl index,如果过期时间不正确,我必须重新索引它。

我在 mongoc 驱动程序中看到了 drop index 功能。但似乎mongocxx驱动程序中没有这样的选项。我是否缺少任何 api 或者有什么方法可以访问底层的 mongoc_collection_t 对象,所以我可以调用 mongoc 驱动程序函数?

【问题讨论】:

    标签: c++ mongo-cxx-driver


    【解决方案1】:

    如果您想删除单个索引,您可以使用drop_one,或者使用索引名称:

    db["collection"].indexes().drop_one("department_1");
    

    或有文件:

    db["collection"].indexes().drop_one(make_document(kvp("department", 1)));
    

    要小心,因为如果索引不存在,它会抛出。

    要删除所有可以使用drop_all的索引:

    db["collection"].indexes().drop_all();
    

    test/index_view.cpp 有更多示例

    【讨论】:

      猜你喜欢
      • 2020-03-27
      • 2017-05-25
      • 1970-01-01
      • 1970-01-01
      • 2014-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-10
      相关资源
      最近更新 更多