1.Poco进行数据库操作的步骤一般是:

a. 创建会话(session)

b. 从DB中读写数据(into, use)

c. 使用statements

d. 使用容器(Collection) (数据,集合...)

e. 使用limit限定

f. 如何使用复杂的数据类型(如何将一个C++对象映射到数据库的表

下面是一个简单的操作数据库的示例:

#include "Poco/String.h"

#include "Poco/Format.h"

#include "Poco/Exception.h"

#include "Poco/Data/Common.h"

#include "Poco/Data/BLOB.h"

#include "Poco/Data/StatementImpl.h"

#include "Poco/Data/MySQL/Connector.h"

#include "Poco/Data/MySQL/MySQLException.h"

#include "Poco/Data/SQLite/Connector.h"

#include

using namespace Poco::Data;

using Poco::Data::MySQL::ConnectionException;

using Poco::Data::MySQL::StatementException;

using Poco::format;

using Poco::NotFoundException;

Poco::SharedPtr<:data::session> _pSession = 0;

//Poco::SharedPtr _pExecutor = 0;

std::string _dbConnString = "user=smart;password=smart;db=smart;compress=true;auto-reconnect=true";

int _tmain(int argc, _TCHAR* argv[])

{

MySQL::Connector::registerConnector();

try

{

_pSession = new Session(SessionFactory::instance().create(MySQL::Connector::KEY, _dbConnString));

}catch (ConnectionException& ex)

{

std::cout << "!!! WARNING: Connection failed. MySQL tests will fail !!!" << std::endl;

std::cout << ex.displayText() << std::endl;

}

if (_pSession && _pSession->isConnected())

std::cout << "*** Connected to " << ‘(‘ << _dbConnString << ‘)‘ << std::endl;

int i;

Poco::Data::Session ses(MySQL::Connector::KEY, _dbConnString);

int count = 0;

ses << "SELECT COUNT(*) FROM SMART_U_STREET",into(count),now;

std::cout<

MySQL::Connector::unregisterConnector();

//

//SQLite::Connector::registerConnector();

//Session ses2(SQLite::Connector::KEY,"D:\\_fengbishikaifa\\sqllite\\test_sqlite.db");

//std::string name;

//ses2 << "select id,name from smart_u_street",into(i),into(name),now;

//std::cout<

//SQLite::Connector::unregisterConnector();

std::cin>>i;

return 0;

}

2.Poco数据库缓冲池的使用

Poco::Data::SessionPool用于管理一组session。当需要session时,Session池首先查找已初始化的会话,如果找到了,将返回一个session对象给调用者,并设置此session对象为使用当中。

这里是使用sessionPool的一个简单的小示例。

原文:http://blog.csdn.net/fengshuiyue/article/details/22182821

poco库开发mysql_Poco数据库操作相关推荐

  1. python操作微信小程序云端数据库_微信小程序云开发之数据库操作

    本文实例为大家分享了微信小程序云开发之数据库操作的具体代码,供大家参考,具体内容如下 新建集合 1.打开云开发控制台,数据库 2.添加集合users 添加代码 onAdd: function () { ...

  2. C++ POCO库(访问数据库,版本问题,本人配置失败)

    官网下载源码:https://pocoproject.org/ 一.POCO库简介 学习一个框架前,要先明白它的是什么,为什么,怎么用.下面这些文字,是从中文poco官网上转过来的,正如poco c+ ...

  3. 新酷卡 mysql接口_新酷卡M池二次开发模块数据库操作版

    有大神发了一个soket方式的,尝试继承到模块后发现soket不太适合放到易模块类内, 客户组件不支持放在类内,必须放在界面上,传入赋值类内客户变量,收到数据事件也没办法放在类内,放弃 远程服务支持库 ...

  4. 伪装成mysql的备_如何伪装成一个服务端开发(六) -- 数据库操作

    目录 如何伪装成一个服务端开发(六) 前言 本篇开始学习Spring 的数据库连接. 术语 数据库连接涉及到一些术语,如果在学习之前没有搞清楚,很容易在业务理解上出现偏差. JDBC : Java D ...

  5. Poco 库开发-教你如何读Poco的官方文档

    引言 在使用任何一种框架开发的时候,都不免要阅读官方的文档. 下面就讲述如何来读Poco库的官方文档 Poco库 在我们下载好Poco 后,会有两个文件夹,一个是放文档的doc,另外一个就是代码了,这 ...

  6. 微信小程序云开发:数据库操作

    文章目录 微信云开发数据库 集合,记录和字段 collection,record/doc & field 数据库操作 创建记录 查询记录 删除记录 更新记录 数据库官方文档 微信云开发数据库 ...

  7. 二次开发mysql数据反推_Discuz二次开发之数据库操作

    一.discuz数据操作之查: 1.fetch_all DB::fetch_all(sql, $arg = array());//取出符合条件的所有数据 sql为查询语句,$arg为绑定参数 例:$r ...

  8. discuz mysql类_Discuz X2二次开发之数据库操作 DB类

    Discuz X2的数据库操作类主要包括以下几个: DB::result_first 返回SQL查询的唯一字段的唯一值,查询结果是字符 DB::fetch_first 返回SQL查询的多个字段的值,查 ...

  9. NC开发前后台数据库操作的用法

    后台数据库操作方法(private端): 以下为后台查询方法 //只能在private端使用 BaseDAO bd = new BaseDAO(); //查询语句只能返回一行一列结果 String s ...

  10. Poco库使用:文件目录操作

    文章目录 获取各种标准目录 获取和应用相关的信息 目录操作 文件操作 在工程项目开发中,文件目录操作应该是最常见的操作之一了吧.这里就介绍一下如何通过Poco库实现各种文件目录操作. 获取各种标准目录 ...

最新文章

  1. 学习Python编程,推荐最好的五本参考书,必读~~~
  2. 【JUC并发编程12】Fork与Join分支
  3. Docker远程TLS管理
  4. 基于Asp.Net Core打造轻量级内部服务治理RPC(一)
  5. jpa 默认生成sql语句_springboot-jpa自动创建数据库表
  6. unity中创建游戏场景_在Unity中创建Beat Em Up游戏
  7. linux 高可用----keepalived+lvs
  8. i8一点通无盘解决方案
  9. 如何下载网页上的音频文件
  10. 网银打印回单显示服务器不能创建对象,打开应用弹出提示“Activex部件不能创建对象”的解决方法...
  11. 《数据安全法》施行在即,政企单位如何构建数据安全治理体系?
  12. python如何退出while循环_python如何跳出while循环
  13. 使用jib-maven-plugin分层构建Docker镜像——避免直接使用FatJar
  14. Servlet本身的init,service,destory生命周期方法
  15. 简单的md5加密数据及密码复杂度校验
  16. 微信支付~微信手机网站支付(mweb)
  17. 主成分分析时,如果矩阵秩亏,会发生什么后果?
  18. Android三大按钮,模拟Android导航栏三大金刚按键点击
  19. LeetCode876 --- 剑指Offer 22
  20. Android进阶——Small源码分析之启动流程详解

热门文章

  1. 5GC 网元介绍(AMF、SMF、UPF、UDM、PCF)
  2. 软件的hil测试,电力电子新能源仿真测试HIL
  3. Java中三元运算符
  4. 使 div 水平 垂直 居中
  5. 扫码点餐有哪些优势?
  6. 有1分,2分,5分,10分四种硬币,每种硬币数量无限,有多少中组合可以组成n分钱?
  7. 菜鸟必看IPC空连接的使用(转载)
  8. matlab画组合立方体,matlab小程序 画立方体
  9. package.json文件指南
  10. 腾讯汤道生:安全是产业数字化的底座