Sqlite China  
首页 | 各种语言的sqlite编程 | sqlite研究 |sqlite应用实例与杂谈 | sqlite相关下载 | SQlite论坛
当前位置 : 主页>sqlite研究>列表
SQLite函数使用教程(1)
来源:工友 作者:工友 时间:2007-12-21

SQLite官方的使用介绍中附带了一个C语言的实例,该实例使用了回调的方法处理由SQL语句返回的记录集,这种回调函数的方法比较复杂,而且也并没有获得什么实质性的好处。所以在这里我推荐使用另外一组函数来完成该类操作,经实践检验证明,该方法在效率方面不存在任何问题。具体代码如下:

sqlite3 *db;

    char *zErrMsg = 0;

    int nrow = 0, ncolumn = 0;  //查询语句返回的结果集的行数,列数

    char temp[256], FileRoot[256];

    char ** azResult;   //用于保存查询结果集数据

 

    sprintf(temp, _T("%s"), _T("\\test.db"));

 

/*

SQLite3UTF-8的编码方式处理字符串,所以在使用sqlite3_open打开数据库之前需要将数据库路径进行编码转换。

*/

    CCodingConv::GB2312_2_UTF8(FileRoot, 256, temp, 0);

    sqlite3_open(FileRoot, &db);

 

    if(db == NULL)

    {

        return -1;

    }

 

    // sqlite3_get_table函数可以返回SQL语句执行之后的记录集,以及行列数

    sqlite3_get_table(db, "SELECT name, age FROM list;", &azResult, &nrow, &ncolumn, &zErrMsg);

 

//nrow表明一共有多少项符合该次查询条件的记录

    for(int k = 1; k <= nrow; k++)

    {

        printf(azResult[k*ncolumn]);   //对应name列的数据

printf(azResult[k*ncolumn+1]);  //对应age列的数据

    }

 

//释放为记录集分配的内存,如果返回了空记录集并不会发生错误

    sqlite3_free_table(azResult);

//关闭数据库

    sqlite3_close(db);

 

return 0;

 

注释:原代码中的CCodingConv类可以进行UTF-8GB2312之间的转换。

      数据库的表为

CREATE TABLE list (name varchar(40) UNIQUE, age integer);

 

存入数据:

    sqlite3_exec(db, "insert into list values ('tamsyn','24');", 0, 0, &zErrMsg);

    sqlite3_exec(db, "insert into list values ('mistletoe','23');", 0, 0, &zErrMsg);

 

    使用这种方法在C语言中可以更方便的使用SQLite3,避免了回调函数的复杂性。并且可以完成任何SQL语言的查询操作。接下来我们的文章会结合实际操作,总结一下如何更高效的使用SQLite数据库!一点愚见还望大家不吝赐教!

/upimg/soft/1_071221130918.rar

(阅读次数:
上一篇:SQLite调用C++封装类使用介绍(1) 下一篇:SQLite函数使用教程(2)
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
§最新评论
热点文章
·SQLite数据库的体系结构
·SQLite与其他数据库的速度
·SQL 语言参考资料
·SQLite语法备忘录
·sqlite 的相关调查1
·嵌入式数据库SQLite的一份
·SQLite在嵌入式Web服务器
·点评主流开源数据库的技术
·基于ARM-Linux的SQLite嵌
·SQLite与其他数据库的速度
·SQLite数据库编程--创建数
·SQL 语法手册
·SQLite Mode 数据库交互的
·SQLITE3 使用总结(3)
·XXTEA加密算法为SQLite 3.
·SQLite 第三版总览(简介)
·SQLite 第三版中的数据类
·用sqlite 执行标准 sql 语
·System.Data.Sqlite 上手
·SQLite编译安装步骤
相关文章
·SQLite Mode 数据库交互的
·SQL 语言参考资料
·SQLite在嵌入式Web服务器
·SQL 语法手册
·System.Data.Sqlite 上手
·SQLite数据库编程--创建数
·SQLite数据库编程--数据库
·SQLite在TorqueScript中的
·关于sqlite_exec回调函数
·用sqlite 执行标准 sql 语

版权Power by DedeCms   后台登陆
Copyright @ 2007