码迷,mamicode.com
首页 > 数据库 > 详细

sequoiadb的c++应用开发1

时间:2015-01-17 00:55:58      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:

BSON( "phone" << BSON_ARRAY( "13800138123" << "13800138124" ) )

 

使用sequoiadb开发c++应用时需要使用BSON对象,本篇主要讲下BSON的操作方面的东西

 

1:构建一个_id的BSON对象

BSON的c++驱动给我提供了一个宏BSON,使用该对象可以很方便的生成一个BSON对象,但是有个坑,它不能构建——Id的BSON对象

BSONObj obj=BSON("_id"<<BSON("$oid"<<"xxx"));

使用这个语句创建BSON,在查找的时候,找不到数据(报错,忘记)。正确做法应该是。

BSONObjBuilder builder ;
OID  oid(inst_id);  
BOSONObj condition=builder.appendOID("_id",&oid); // StringData类型可以使用string类型和char* 替换


2:构建一个BSON,值是数组

 数据格式{"num":[33,44]}

BSONArrayBuilder  nums;

BSONObjBuilder arr;

nums<<33<<44;

arr.append("num",nums.arr());

注意上面BSONArrayBuilder不能使用done方法,该方法会生成一个映射数组

也可以使用宏

BSON( "phone" << BSON_ARRAY( "13800138123" << "13800138124" ) )

这些类和宏都在namespace bson下面。

 

sequoiadb的c++应用开发1

标签:

原文地址:http://www.cnblogs.com/gaoxing/p/4229993.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!