在新的MongoDB-C驱动程序中检索集合中的所有数据

时间:2014-05-15 23:37:50

标签: mongodb bson mongodb-c

我的外表有一个非常简单的问题但是我已经被困了好几天了。

您会考虑哪种方法(最有效的方法,如果您知道几种方法)来检索集合中存在的所有数据?

这是我的收藏示例的结构:

collection = {
   _id: ObjectId(""),
   field: ""
}

最好的问候。

1 个答案:

答案 0 :(得分:1)

在mongodb-c驱动程序中构建查询,

  bson_init( query );
  bson_finish( query );

//如果你想添加更多的搜索参数,那么在这两个之间添加

  bson_append_int( query, "age", 24 );

您可以继续添加更多搜索条件。

以下是一个例子:

  bson query[1];
  mongo_cursor cursor[1];

  bson_init( query );
  bson_append_int( query_buf, "age", 24 ); // to match particular criteria, remove this line to match call documents
  bson_finish( query );

  mongo_cursor_init( cursor, conn, "test.collection" );
  mongo_cursor_set_query( cursor, query )

  while( mongo_cursor_next( cursor ) == MONGO_OK ) {
    bson_iterator iterator[1];
    if ( bson_find( iterator, mongo_cursor_bson( cursor ), "name" )) {
        printf( "name: %s\n", bson_iterator_string( it ) );
    }
  }

  bson_destroy( query );
  mongo_cursor_destroy( cursor );

这相当于:

db.collection.find()