| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
12年前发布

用C++简单封装了一下SQLite

SQLite 强大,大家都知道,但是原生是C接口,用来其应用层稍微麻烦些。

今天做了个简单的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 版本的库。

转自:http://blog.csdn.net/lonelyforest/article/details/7706902

 本文由用户 jopen 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1341147211809.html
SQLite C/C++开发 C/C++