sqlite数据库查询函数,sqlite3_exec和sqlite3_get_table。

女神打Boss 2015-07-26 12:56:06
求解答为什么不推荐使用sqlite3_get_table函数,为什么,具体的表现在哪里?

我来说一个sqlite3_get_table函数不支持bool类型。

另外用sqlite3_get_table函数查询时得到的字符串数组,如果查询的数据很多这个数组岂不是要很大,对查询操作会不会有影响,速度影响还是会有其他影响,会很吃电脑资源吗?

主要是刚写sqlite3_exec函数不会查询用啊!

跪求高手!!!
...全文
1153 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
金玲郎 2017-06-21
  • 打赏
  • 举报
回复
貌似别人说的sqlite3_exec可以使用
女神打Boss 2015-08-03
  • 打赏
  • 举报
回复
来个人啊,
Ansel-枫儿-Moe 2015-08-03
  • 打赏
  • 举报
回复
技术区的啊。。。不会sqlite3_get_table~
姓小名白丶 2015-08-03
  • 打赏
  • 举报
回复
说不定是bit类型呢?
NANU-NANA 2015-08-03
  • 打赏
  • 举报
回复
把分全给哥 2015-08-03
  • 打赏
  • 举报
回复
没用过sqlite数据库
超级格古达 2015-08-03
  • 打赏
  • 举报
回复
我来说sqlite3_get_table函数不支持bool类型。
女神打Boss 2015-08-03
  • 打赏
  • 举报
回复
来个人我好结贴啊
女神打Boss 2015-07-31
  • 打赏
  • 举报
回复
怎么木有人啊。
c语⾔数据库查询系统,C语⾔实现sqlite3数据库查询的基本⽅ 法 sqlite回传函数相关 说了3种基本⽅法:callback,gettable和预处理stmt⽅法 下⾯给出测试代码和测试⽤数据库,代码如下 #include #include #include #include "sqlite3.h" // //typedef int (*sqlite3_callback)( // void* data, /* Data provided in the 4th argument of sqlite3_exec() */ // int ncols, /* The number of columns in row */ // char** values, /* An array of strings representing fields in the row */ // char** headers /* An array of strings representing column names */ //); int callback(void* data, int ncols, char** values, char** headers) { int i; int len =0; int ll=0; for(i=0; i < ncols; i++) { if(strlen(headers[i])>len) len = strlen(headers[i]); } for(i=0; i < ncols; i++) { ll = len-strlen(headers[i]); while(ll) { fprintf(stdout," "); --ll; } fprintf(stdout, "%s: %sn", headers[i], values[i]); } fprintf(stdout, "n"); return 0; } int search_by_callback(const char* db_name, const char* sql_cmd) { int i = 0 ; int j = 0 ; int nrow = 0, ncolumn = 0; char **azResult; //⼆维数组存放结果 sqlite3 *db=NULL; char *zErrMsg = 0; int rc; int len=0; if(access(db_name, 0) == -1) { fprintf(stderr, "%s not foundn", db_name); return -1; } rc = sqlite3_open(db_name, &db); if( rc != SQLITE_OK) { fprintf(stderr, "%s open failed: %sn", db_name,sqlite3_errmsg(db)); sqlite3_close(db); return -1; } //查询数据 rc = sqlite3_exec( db,sql_cmd, callback, NULL, &zErrMsg ); if( rc != SQLITE_OK) { fprintf(stderr, "%s %s: %sn", db_name,sql_cmd, sqlite3_errmsg(db)); if(zErrMsg) { fprintf(stderr,"ErrMsg = %s n", zErrMsg); sqlite3_free(zErrMsg); } sqlite3_close(db); return -1; } if(zErrMsg) { sqlite3_free(zErrMsg); } //关闭数据库 sqlite3_close(db); return 0; } int search_by_table(const char* db_name, const char* sql_cmd) { int i = 0 ; int j = 0 ; int nrow = 0, ncolumn = 0; char **azResult; //⼆维数组存放结果 sqlite3 *db=NULL; char *zErrMsg = 0; int rc; int len=0; if(access(db_name, 0) == -1) { fprintf(stderr, "%s not foundn", db_name); return -1; } rc = sqlite3_open(db_name, &db); if( rc != SQLITE_OK) { fprintf(stderr, "%s open failed: %sn"

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧