SQLite C++ Wrapper 是一个 C++ 语言对 SQLite 的最小封装包。
示例代码1:
 
#include <string>
#include <iostream>
#include <stdexcept>
using namespace std;
 
#include "sqlite3x.hpp"
using namespace sqlite3x;
 
int main(void) {
try {
sqlite3_connection con("test.db");
 
int count = con.executeint(
"select count(*) "
"from sqlite_master "
"where name='t_test';");
 
if(count == 0) {
con.executenonquery(
"create table t_test(number,string);");
}
 
sqlite3_transaction trans(con);
{
sqlite3_command cmd(con,
"insert into t_test values(?,?);");
cmd.bind(2, "foobar", 6);
 
for(int i = 0; i < 10000; ++i) {
cmd.bind(1, i);
cmd.executenonquery();
}
}
 
// if trans goes out of scope (due to an exception or
// anything else) before calling commit(), it will
// automatically rollback()
trans.commit();
}
catch(exception &ex) {
cerr << "Exception Occured: " << ex.what() << endl;
}
 
return 0;
}
示例代码2:
 
#include <iostream>
#include <stdexcept>
using namespace std;
 
#include "sqlite3x.hpp"
using namespace sqlite3x;
 
int main(void) {
try {
sqlite3_connection con("test.db");
 
sqlite3_command cmd(con, "select * from t_test;");
sqlite3_reader reader = cmd.executereader();
 
while(reader.read()) {
cout << reader.getcolname(0) << ": "
<< reader.getint(0) << endl;
}
}
catch(exception &ex) {
cerr << "Exception Occured: " << ex.what() << endl;
}
 
return 0;
}

SQLite C++ Wrapper 是一个 C++ 语言对 SQLite 的最小封装包。的更多相关文章

  1. 由一个bug引发的SQLite缓存一致性探索

    问题 我们在生产环境中使用SQLite时中发现建表报“table xxx already exists”错误,但DB文件中并没有该表.后面才发现这个是SQLite在实现过程中的一个bug,而这个bug ...

  2. 第一个C语言程序

    从第一个C语言程序了解C语言 了解关键字 了解函数 注释 C语言的执行流程 标识符 C语言的学习重难点 从第一个C语言程序了解C语言 上图是一个在控制台上显示“Hello, World!”的C语言源代 ...

  3. php调用一个c语言写的接口问题

    用php调用一个c语言写的soap接口时,遇到一个问题:不管提交的数据正确与否,都无法请求到接口 1.用php标准的soap接口去请求 2.拼接xml数据去请求 以上两种方式都不正确 解决办法:php ...

  4. 机器学习(一) 从一个R语言案例学线性回归

    写在前面的话 按照正常的顺序,本文应该先讲一些线性回归的基本概念,比如什么叫线性回归,线性回规的常用解法等.但既然本文名为<从一个R语言案例学会线性回归>,那就更重视如何使用R语言去解决线 ...

  5. 第一个C语言编译器是怎样编写的?

    首先向C语言之父Dennis MacAlistair Ritchie致敬! 当今几乎所有的实用的编译器/解释器(以下统称编译器)都是用C语言编写的,有一些语言比如Clojure,Jython等是基于J ...

  6. C语言学习-01第一个C语言程序

    一 C语言的历史 C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译.处理低级存储器.产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. 尽管C语言提供 ...

  7. 李洪强iOS开发之【零基础学习iOS开发】【02-C语言】02-第一个C语言程序

    前言 前面已经唠叨了这么多理论知识,从这讲开始,就要通过接触代码来学习C语言的语法.学习任何一门语言,首先要掌握的肯定是语法.学习C语言语法的目的:就是能够利用C语言编写程序,然后运行程序跟硬件(计算 ...

  8. 一个C语言宏展开问题

    转自一个C语言宏展开问题 一个令人比较迷惑的问题,学C语言好多年,今天终于搞明白,记之. ------------------------------------------------------- ...

  9. C语言入门(2)——安装VS2013开发环境并编写第一个C语言程序

    在C语言入门系列中,我们使用Visual studio 2013 Professional作为开发工具.本篇详细介绍如何安装Visualstudio 2013 Professional并写出我们第一个 ...

随机推荐

  1. sklearn算法中的顶层设计

    sklearn监督学习的各个模块 neighbors近邻算法,svm支持向量机,kernal_ridge核岭回归,discriminant_analysis判别分析,linear_model广义线性模 ...

  2. 收藏的链接-English

    What is the adverb for deposit? https://www.wordhippo.com/what-is/the-adverb-for/deposit.html

  3. Read-Write lock 看可以,不过看的时候不能写

    当线程“读取”实例的状态时,实例的状态不会改变,只有线程对实例“写入”操作时才会改变.read-write lock 模式将读取和写入分开来处理,在读取数据前获取读锁定,而写入之前,必须获取写锁定. ...

  4. iOS开发系列-常见离线存储方式

    概述 在很多社交App手机在手机没有网络时,重新启动应用,依然能否展示上次访问的数据,提高用户体验,这个就是离线数据存储的运用场景.在iOS开发中常见的离线存储技术有Plist存储.个人偏好存储.解归 ...

  5. RDD运行原理

  6. Ajax加载数据的使用

    需求就是不能再进入页面时加载数据,只能在点击其中一个按钮时把数据加载呈现出来.具体效果如最下面的图. 1.前台页面 <h1 " onclick="GetData(1)&quo ...

  7. 【noi.ac-CSP-S全国模拟赛第三场】#705. mmt

    给定数组a[],b[] 求$$c_i=\sum_{j=1}^{i} a_{\left \lfloor \frac{n}{j} \right \rfloor}·b_{i \bmod j}$$ 大概就是对 ...

  8. vc面试题目

    class B { public: B() { cout << "default constructor" << endl; } ~B() { cout & ...

  9. 自动化测试之sikuli调研

    调研结果 Sikuli可用于web和app的自动化测试中,操作简单,代码容易,但截图过程太过繁琐,所需要的图片内存占用量大,且sikuli的图片识别度较低,需对所要操作的图片进行精准截图. 什么是Si ...

  10. 关于jquery.validate.js的用法

    // 手机号码验证 jQuery.validator.addMethod("isMobile", function(value, element) {   var length = ...