sequoiadb的c++应用开发1

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下面。

时间: 2024-10-21 06:31:58

sequoiadb的c++应用开发1的相关文章

Sequoiadb 测试体验系列之六 – Java 开发3

上一篇笔记中更新了在集合中的删除,更新,查询等操作.这次尝试一下SequoiaDB的集群操作.包括复制组的创建和删除,复制组的启动和停止,在复制组中添加.删除.启动.停止节点,获取复制组中的主从节点等. import java.util.ArrayList; import java.util.List; import org.bson.BSONObject; import org.bson.BasicBSONObject; import com.sequoiadb.base.Node.NodeS

SequoiaDB版本在线升级介绍说明

1.前言 在SequoiaDB数据库发展过程中,基本保持每半年对外发行一个正式的Release版本.并且每个新发布的Release版本相对老版本而言,性能方面都有很大的提高,并且数据库也会在新版本中加入很多新的功能,希望能够提高数据库开发的易用性. 在SequoiaDB发展过程中,越来越多的开发者了解到它,并且对它发生兴趣.现在已经有越来越多的用户在学习.研究SequoiaDB,并且也有越来越多的企业用户在对SequoiaDB经过充分测试后,决定将SequoiaDB部署在企业的生产环境中,利用S

2014 年最热门的国人开发开源软件 TOP 100

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是开源不可忽视的力量. 而我们这个榜单也是从这些国人开发.主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问.收藏.下载等多个角度,从而得出前 100 名最受欢迎的开源软件.我们所评选出来的软件并非同类型,尽管放在一起不是很科学,但我们仍希望通过我们的视角让大家对国内一些

2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区

不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是开源不可忽视的力量. 而我们这个榜单也是从这些国人开发.主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问.收藏.下载等多个角度,从而得出前 100 名最受欢迎的开源软件.我们所评选出来的软件并非同类型,尽管放在一起不是很科学,但我们仍希望通过我们的视角让大家对国内一些

大数据项目实践:基于hadoop+spark+mongodb+mysql开发医院临床知识库系统

一.前言 从20世纪90年代数字化医院概念提出到至今的20多年时间,数字化医院(Digital Hospital)在国内各大医院飞速的普及推广发展,并取得骄人成绩.不但有数字化医院管理信息系统(HIS).影像存档和通信系统(PACS).电子病历系统(EMR)和区域医疗卫生服务(GMIS)等成功实施与普及推广,而且随着日新月异的计算机技术和网络技术的革新,进一步为数字化医院带来新的交互渠道譬如:远程医疗服务,网上挂号预约. 随着IT技术的飞速发展,80%以上的三级医院都相继建立了自己的医院信息系统

2014年最热门的国人开发开源软件TOP100

2014年最热门的国人开发开源软件TOP100 不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是开源不可忽视的力量. 而我们这个榜单也是从这些国人开发.主要参与开发或者基于国外开源软件进行改进并形成独立版本的软件中,根据该软件的访问.收藏.下载等多个角度,从而得出前 100 名最受欢迎的开源软件.我们所评选出来的软件并非同类型,尽管放在一起不是很

SequoiaDB的查询执行过程

SequoiaDB的查询执行过程 继续读了SDB的代码,重点还是内核的代码.从客户端–查询优化-查询执行的过程来描述一下查询的过程.希望可以搞清楚2个问题: SDB能做什么查询? 搞清楚SDB是怎么做查询的? 第一个问题的答案是: 理论上,SDB能做mongoDB能做的所有查询,SDB还支持SQL(我指的是SDB内建的支持,不是通过PG支持的查询) 实际上,我没有一个一个去测,SDB看起来mongoDB类的查询基本上完成了:SQL的支持还更像一个玩具.至于说我怎么得到这个结论的,请看下面的分析吧

SequoiaDB x Spark 新主流架构引领企业级应用

6月,汇集当今大数据界精英的Spark Summit 2017盛大召开,Spark作为当今最炙手可热的大数据技术框架,向全世界展示了最新的技术成果.生态体系及未来发展规划. 巨杉作为业内领先的分布式数据库厂商,也是Spark全球的14家发行商之一,受邀在本次大会做了题为"分布式数据库+Spark架构和应用"的分享.巨杉数据库联合创始人.CTO及总架构师也将给大家分享大会的见闻以及这一架构的发展和应用情况. Spark全面进化,扩大生态助力人工智能 随着Spark 2.2 版本的发布,S

PostgreSQL对接SequoiaDB

PostgreSQL是一款开源的SQL数据库,支持标准SQL,用户可以通过JDBC驱动连接PostgreSQL进行应用程序开发.用户通过 扩展PostgreSQL功能,让开发者可以使用SQL语句访问SequoiaDB数据库,完成SequoiaDB数据库的增.删.查.改操作.本文就针 对如何扩展PostgreSQL功能,实现PostgreSQL对接SequoiaDB进行介绍. 1 部署PostgreSQL 本教程为PostgreSQL与SequoiaDB的对接教程,所以作者建议使用者在sdbadm