MongoDB 3.2 c++驱动程序,使用$exists

MongoDB 3.2 c++ drivers , using $exists

本文关键字:使用 exists 驱动程序 c++ MongoDB      更新时间:2023-10-16
bsoncxx::builder::stream::document search_builder;
mongocxx::options::find img_find; // This speeds up the queries
search_builder_images.clear();
search_builder_images <<  "_id" << "abc" << "data" << open_document <<"$exists" << true << close_document ;
for (bsoncxx::document::view doc : cursor_cal) {
    std::cout << bsoncxx::to_json(doc) << std::endl;
}

auto cursor_cal = dbMongo[collectionName].find(search_builder.view(((;

这里随机 50-50% 的机会,我有时会得到我期望的输出,有时我得到分段错误。

我做错了什么?(我正在尝试创建此search_builder以在mongodb数据库中搜索并获取存在数据的文档?

这有点旧,但我在构建文档时遇到了段错误问题,不确定是否是您面临的问题。我不得不将查询文档构造分成多行,例如:

auto queryDoc = document{};
queryDoc << _id << "abc";
queryDoc << "data" << open_document;
  queryDoc << "$exists" << true;
queryDoc << close_document;
auto query = queryDoc << finalize;

希望这对其他人有所帮助。