用C++简单封装了一下SQLite
2012-07-01 18:21
447 查看
SQLite 强大,大家都知道,但是原生是C接口,用来其应用层稍微麻烦些。
今天做了个简单的C++封装,使用面向对象的方法来使用。
优点:面向对象的方式,减少应用层的复杂性;
缺点:暂对多线程环境支持不足。
使用样例如下:
可以使用内存数据库、文件数据库等多种方式,这里的例子比较简单。
SQLite地址:http://sqlite.org/
SQLitePP 下载地址:https://sourceforge.net/projects/sqlite4pp/ 目前只有 VC2010 版本的库。
今天做了个简单的C++封装,使用面向对象的方法来使用。
优点:面向对象的方式,减少应用层的复杂性;
缺点:暂对多线程环境支持不足。
使用样例如下:
// a simple example to use SQLitePP void simple_example() { //define a connection SQLitePP::DBConnection conn; // connect to a database int rc = conn.connect("D:\\mytestdb.db"); if (rc != 0) { std::cout << conn.getErrorMessage() << std::endl; return; } // define a command and set a command text SQLitePP::DBCommand cmd(&conn); cmd.setCommandText("create table tbl_test(id integer not null, name text, contact text)"); rc = cmd.execute(); // execute if (rc != 0) { std::cout << conn.getErrorMessage() << std::endl; return; } // insert data cmd.setCommandText("insert into tbl_test(id, name, contact) values(0, 'gavin', 'vxling@gmail.com')"); rc = cmd.execute(); // execute if (rc != 0) { std::cout << conn.getErrorMessage() << std::endl; return; } // execute a query cmd.setCommandText("select * from tbl_test"); rc = cmd.execute(); // execute if (rc != 0) { std::cout << conn.getErrorMessage() << std::endl; return; } // print all result while (cmd.fetchNext()) { std::cout << cmd.field(0).toInt() << ", " << cmd.field(1) << std::endl; } }
可以使用内存数据库、文件数据库等多种方式,这里的例子比较简单。
SQLite地址:http://sqlite.org/
SQLitePP 下载地址:https://sourceforge.net/projects/sqlite4pp/ 目前只有 VC2010 版本的库。
相关文章推荐
- 用C++简单封装了一下SQLite
- C++Windows下SQLite简单封装
- 对libpq进行简单的c++封装
- 在libuv之上做的简单C++封装
- QSqlDatabase的进一步封装(多线程支持+更加简单的操作)——同时支持MySQL, SQL Server和Sqlite
- curl的简单封装(c++版本)
- C++封装SQLite实例<六>
- C++封装一个简单的线程类
- 持久化存储SQLite的两种C++封装(easySQLite 和 cppSQLite)
- 简单来总结一下C++与C#之间的区别
- C++ 简单封装socket类包含TCP和UDP基本通信能力
- C++中 栈的简单封装
- c++关于封装、接口的简单理解
- 关于轻量级数据库SQLite一个简单的SQLiteHelper访问数据库封装类
- SQLite3简单C++包装类源码示例
- Cocos2d-X 学习笔记 18 Cocos2dx 下对sqlite3 的简单封装
- C++使用Sqlite3的简单案例
- C++封装SQLite实例<四>
- C++封装SQLite实例<六>
- Cocos2d-X 学习笔记 17 Cocos2dx 下对sqlite3 的简单封装