1.查询表方式介绍
- 查询表方式的基本特点
查询表方式是同步的的,查询语句调用后,查询结果直接在函数输出参数中给出;
与回调方式相比,查询表方式是单次完成的,结果一次给出,不再按条给出。
2.查询表方式相关API介绍
2.1 查询API
- 函数原型
int sqlite3_get_table(
sqlite3 *db,
const char *zSql,
char ***pazResult,
int *pnRow,
int *pnColumn,
char **pzErrmsg
);
- 参数列表
sqlite3 *db —- 数据库操作句柄,由sqlite3_open()函数得到
const char *zSql —- SQL语句
char ***pazResult —- 查询结果的数据指针数组
int *pnRow —- 查询结果记录总数,下标从0开始
int *pnColumn —- 查询结果列数,列数为实际表列数的2倍,前面的列为字段名列
char **pzErrmsg —- 当函数执行失败时,为错误信息 返回值
int —- 函数执行成功时,返回0;否则返回错误码注意:
1.函数执行成功时,需要调用释放表内存函数,否则会造成内存泄露。具体函数定义见下文;
2.查询结果列数,列数为实际表列数的2倍,前面的列为字段名列,后面的列为实际字段值列。
2.2 释放查询表内存API
- 函数原型
void sqlite3_free_table(char **result);
- 参数列表
char **result —- 查询表结果指针,该指针由sqlite3_get_table()函数输出函数得出 - 返回值
无
3.代码实例
- 代码说明
本例主要说明利用查询表方式查询数据。 - 测试平台
1.开发语言:C++
2.开发工具:VS2015
3.操作系统:Win7 X64 测试数据说明
测试表为Student表&