mongodb的c++接口的说明

2023-11-14

mongodb的c++接口的说明

作者: habadog 日期: 2011 年 08 月 02 日 发表评论 (3) 查看评论

mongodb c++ 接口说明

说明:
IN表示输入参数;
OUT表示输出参数;

(1)构造函数:
DBClientConnection(bool auto_connect, 0, double so_timeout);
auto_connect(IN):连接失败后自动重连
so_timeout(IN):非连接超时,tcp的读写超时

(2)连接mongo:
bool connect(string server, &string errmsg);
返回值:成功/失败
server(IN):连接的服务器
errmsg(OUT):出错信息

示例:

?
1
2
3
4
5
6
7
bool auto_connect = true ;
double so_timeout = 3;
string host = "127.0.0.1" ;
string port = "3003" ;
string errmsg = "" ;
DBClientConnection pConn = new DBClientConnection(auto_connect, 0, so_timeout);
pConn->connect(host+ ":" +port, errmsg);

(3)查询
auto_ptr query(const string &ns, Query query, int nToReturn, int nToSkip,
const BSONObj *fieldsToReturn, int queryOptions , int batchSize);

返回值:结果集
ns(IN):命名空间,db_name.collection_name
query(IN):查询的条件,相当于mysql中的where
nToReturn:返回结果条数,相当于mysql中的limit
nToSkip:跳过的结果条数,相当于mysql中的offset
fieldsToReturn:返回列集合
queryOptions:详见QueryOptions这个枚举,填0即可
batchSize:未说明

示例:

?
1
2
3
4
5
6
7
8
string db = "shool" ;
string collection = "student" ;
Query condition = QUERY( "age" <<20);
int limit = 10;
int offset = 5;
BSONObj columns = BSON( "uid" <<1<< "name" <<1);
auto_ptr cursor;
cursor = pConn->query(db+ "." +collection, condition, limit, offset, columns, 0, 0);

其效果相当于:
select uid,name from shool.student where age=20 limit 5,10;

对结果集的操作:

?
1
2
3
4
5
6
7
8
9
int uid=0;
string name= "" ;
while (cursor->more())
{
     BSONObj p = cursor->next();
     uid = p[ "uid" ].Int();
     name = p[ "name" ].String();
     count << uid << " " << name << endl;
}

(4)插入
void insert(const string &ns, BSONObj obj, int flags);
ns(IN):命名空间,db_name.collection_name
obj(IN):插入的列
flags(IN):详见API文档,默认填零即可

示例:

?
1
BSONObj insert = BSON( "uid" <<10001<< "name" << "skean1017" ); pConn->insert(db+ "." +collection, insert, 0);

其效果相当于:
insert into shool.student (uid, name) values (10001, “skean1017″);

(5)删除
void remove(const string &ns, Query query, bool justOne);
ns(IN):命名空间,db_name.collection_name
query(IN):查询条件
justOne(IN):是否只删除匹配的第一条

示例:

?
1
Query query = QUERY( "name" << "skean1017" ); pConn-> remove (db+ "." +collection, query, true );

其效果相当于:
delete from shool.student where name=”skean1017″;

(6)修改
void update(const string &ns , Query query , BSONObj obj , bool upser , bool multi);
ns(IN):命名空间,db_name.collection_name
query(IN):查询条件
obj(IN):修改后的值
upser(IN):是否upser,如果不存在则插入记录
multi(IN):是否为符合文档

示例:

?
1
2
Query query = QUERY( "uid" <<10001);
BSONObj obj = BSON( "$set" <update(db+ "." +collection, query, obj, false , false );

其效果相当于:
update shool.student set name=”habadog1203″ where uid=10001;

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mongodb的c++接口的说明 的相关文章

  • Git的版本和分支管理

    1 http blog csdn net xiahouzuoxin article details 9393119 2 http blog csdn net xiahouzuoxin article details 9398629 3 ht
  • Qt在linux系统中执行shell命令

    在linux系统下 Qt执行shell命令的方式有3种 1 QProcess execute ls 2 system ls 3 QProcess process new QProcess process gt start ls 注1 以上3
  • 解决ubuntu20搜狗输入法输入不了中文问题

    解决在ubuntu上安装好搜狗输入法后无法输入中文 首先按照官网的安装步骤安装 Ubuntu搜狗输入法安装指南 注意不要忘记安装依赖 输以下命令进行安装 sudo apt install libqt5qml5 libqt5quick5 li
  • 接口测试的测试用例该怎么写呢?

    作者 字节开发测试 链接 https www zhihu com question 305629217 answer 2530044958 来源 知乎 著作权归作者所有 商业转载请联系作者获得授权 非商业转载请注明出处 一 什么是接口 接口

随机推荐

  • Python的exec

    目录 exec 简单使用 动态执行简单的字符串代码 动态执行较复杂的代码 执行文件中的Python代码 在exec中传参 使用中遇到的问题 参考 exec 简单使用 个人比较喜欢用Python里面的exec 可以用来动态执行字符串代码 在f
  • bootstrap方法_自助法(bootstrap)在统计检验中的应用及R语言实现过程

    Bootstrap 自助法 自举法 是非参数统计中一种重要的估计统计量方差 进而进行区间估计的统计方法 Bootstrap通过对给定数据集进行有放回的重抽样以创建多个模拟数据集 生成一系列待检验统计量的经验分布 可以计算标准误差 构建置信区
  • 随机数与简单的周期运动轨迹图案

    背景 概率论的书上有这样一个示例 设想某人在平面上从零点出发 手持一个均匀四面体 四面分别标有1 2 3 4 每个面代表一个方向 东南西北 他随意抛出后 按照这个方向走一单位长度 若干次后观测他走过的路线的轨迹 由此你有什么联想 联想倒是没
  • muduo学习笔记5——线程封装

    线程标识符 pthread self gettid thread gcc内置的线程局部存储设施 thread只能修饰POD类型 plain old data pthread atfork 线程标识符 Linux中 每个进程有一个pid 类型
  • Nginx 配置反向代理

    Nginx 配置反向代理 项目中有solrcloud的运用实例 这里拿来做反向代理的配置 solrJ客户端直接请求solr节点 用nginx为solrcloud的三个节点做统一入口处理 nginx与solr节点分布的情况如下 目的 solr
  • Typora使用笔记

    Typora使用笔记 简介 Markdown是轻量级标记语言 轻量 易读 易写且对图片 图表 公式等都有支持 Typora是比较简洁优雅的Markdown编辑器 正式版发布后要收费了 还是固定在0 11 18吧 以后有钱了就补票 Markd
  • 怎么找到一个好名字idea插件开发

    VFS简介 虚拟文件系统 VFS 是一个Intellij Platform组件 它封装了大部分对活动文件的处理操作 为了达成以下目的 提供一个处理文件的通用API 而不关心文件的具体位置 无论文件位于磁盘上 归档文件中还是HTTP服务器上
  • Java基础_JDK下载安装与配置

    文章目录 开始前准备 JDK下载 JDK安装 环境配置 验证环境配置是否成功 开始前准备 在配置JDK之前 我们需要先下载并安装好JDK 若已下载则可以跳过该环节 JDK和JRE的区别 JRE是运行环境 程序运行必需 JDK是开发环境 包含
  • Mysql—C语言API接口

    Mysql C语言API接口 一 mysql arp访问数据的操作流程 1 初始化mysql操作句柄 2 连接mysql服务器 3 设置mysql客户端字符集 保持与服务器一致 4 选择要操作的数据库 5 定义sql语句 并且执行语句 6
  • 超级楼梯

    有一楼梯共M级 刚开始时你在第一级 若每次只能跨上一级或二级 要走上第M级 共有多少种走法 Input 输入数据首先包含一个整数N 表示测试实例的个数 然后是N行数据 每行包含一个整数M 1 lt M lt 40 表示楼梯的级数 Outpu
  • 战双服务器信息保留多久,《战双帕弥什》6月10日服务器异常处理进度及补偿方案...

    尊敬的各位指挥官 真的十分抱歉 傍晚的服务器异常给大家带来了不好的游戏体验 我们恳请指挥官的原谅 经过慎重的考虑 我们公布本次服务器异常问题的处理方案如下 1 星火服 问题描述 部分指挥官发生了不同程度的数据异常 处理方案 我们决定统一将星
  • STM32——SD卡实验(SDIO方式)

    一 SD卡简介 1 什么是SD卡 SD卡 Secure Digital Memory Card 即 安全数码卡 它是在MMC的基础上发展而来 是一种基于半导体快闪记忆器的新一代记忆设备 它被广泛的用于便携装置上使用 例如数码相机 个人数码助
  • 【二分法】剑指offer:二维数组中的查找

    对于二维数组中每一个一维数组 用二分查找 判断能否找到该数 leetcode专题笔记 二分法查找 1 附leetcode题 m0 52043808的博客 CSDN博客 代码 class Solution public bool binsea
  • react useState自定义hook函数(管理多组件公共状态)

    效果图如下 代码如下 div div
  • 抓取房地产信息:一个Python爬虫实战案例

    目录 目录 1 准备工作 2 分析网页结构 3 编写爬虫 4 提取房源信息 5 输出结果
  • 结合Simulink仿真聊聊PID--理论部分

    如何理解PID PID这个名词一般是电子信息类的学生都不会陌生 它是控制领域非常常见的算法 并且经久不衰 P 比例 I 积分 D 微分 为什么需要用到PID呢 打一个比方 一个12v的电池装到小车上 设置50 的占空比 相当于在小车电机上的
  • document.get:fail Error: cannot find document with _id xx, please make sure that the document exists

    1 解决方案 修改权限 或 新建此数据集 2 详细解读 小程序入门云开发的时候总是会遇到这样的问题 而且很坑很难发现 Error errCode 1 errMsg document get fail Error cannot find do
  • CTFhub技能树_Web RCE

    一 eval执行 1 分析 打开网站显示如下代码 大体意思是 判断cmd是否被设置 若cmd被赋值 则执行如下语句 否则就继续显示以上代码 eval REQUEST cmd 其中 eval 该函数可以把字符串作为PHP代码执行 REQUES
  • Windows上的RocketMQ安装以及测试

    废话不多说 步骤一 下载安装RocketMQ 地址 RocketMQ 官方网站 RocketMQ 步骤二 配置环境解压启动RocketMQ 解压后的目录 配置环境 启动bin目录里的文件 请使用cmd去启动 start mqnamesrv
  • mongodb的c++接口的说明

    mongodb的c 接口的说明 作者 habadog 日期 2011 年 08 月 02 日 发表评论 3 查看评论 mongodb c 接口说明 说明 IN表示输入参数 OUT表示输出参数 1 构造函数 DBClientConnectio