sp3接着上一片
2016-05-01 22:41
274 查看
如果上一片的回调在 sqlite_exec() 程序中作为第三个参数,那么 SQLite 将为 SQL 参数内执行的每个 SELECT 语句中处理的每个记录调用这个回调函数。
下面的 C 代码段显示了如何从前面创建的 COMPANY 表中获取并显示记录:
上述程序编译和执行时,它会产生以下结果:
下面的 C 代码段显示了如何从前面创建的 COMPANY 表中获取并显示记录:
#include <stdio.h> #include <stdlib.h> #include <sqlite3.h> static int callback(void *data, int argc, char **argv, char **azColName){ int i; fprintf(stderr, "%s: ", (const char*)data); for(i=0; i<argc; i++){ printf("%s = %s\n", azColName[i], argv[i] ? argv[i] : "NULL"); } printf("\n"); return 0; } int main(int argc, char* argv[]) { sqlite3 *db; char *zErrMsg = 0; int rc; char *sql; const char* data = "Callback function called"; /* Open database */ rc = sqlite3_open("test.db", &db); if( rc ){ fprintf(stderr, "Can't open database: %s\n", sqlite3_errmsg(db)); exit(0); }else{ fprintf(stderr, "Opened database successfully\n"); } /* Create SQL statement */ sql = "SELECT * from COMPANY"; /* Execute SQL statement */ rc = sqlite3_exec(db, sql, callback, (void*)data, &zErrMsg); if( rc != SQLITE_OK ){ fprintf(stderr, "SQL error: %s\n", zErrMsg); sqlite3_free(zErrMsg); }else{ fprintf(stdout, "Operation done successfully\n"); } sqlite3_close(db); return 0; }
上述程序编译和执行时,它会产生以下结果:
Opened database successfully Callback function called: ID = 1 NAME = Paul AGE = 32 ADDRESS = California SALARY = 20000.0 Callback function called: ID = 2 NAME = Allen AGE = 25 ADDRESS = Texas SALARY = 15000.0 Callback function called: ID = 3 NAME = Teddy AGE = 23 ADDRESS = Norway SALARY = 20000.0 Callback function called: ID = 4 NAME = Mark AGE = 25 ADDRESS = Rich-Mond SALARY = 65000.0 Operation done successfully
相关文章推荐
- npm 安装yeoman时出现npm WARN deprecated npmconf@2.1.2报错...解决办法
- <rhel6+pptpd+freeradius+mysql>
- java中的内部类在main方法中的调用方法以遍历文件为例
- 分类与预测
- SpringMVC中使用Interceptor拦截器
- 20145216史婧瑶《Java程序设计》第四次实验报告
- android开发常用地址
- 随便写的蛇形矩阵
- hdu 1548 简单bfs。。。
- CentOS修改系统的默认启动模式为命令号界面
- c# WinForm开发 DataGridView各种操作总结大全
- spline3 插入
- Linux内核学习总结
- C#—窗体的基本操作(实验8.1、8.2)
- 剑指offer:调整数组顺序使奇数位于偶数前面
- pwnable.kr之bof
- sprlie3创建表
- 20145227 《Java程序设计》实验四实验报告
- 系统调用与库函数
- [Modern OpenGL系列(一)]十步搞定OpenGL开发环境