SELECT Count(*) FROM tabl;
它返回一个数字.
在准备语句后如何使用C接口获取此数字?
解决方法 打开数据库文件,准备语句,制作步骤(例如,如果结果中有多行,则必须逐个获取它们),提取列值,最终确定语句,关闭数据库.像这样的东西:
sqlite3_stmt* stmt = NulL;sqlite3* local_db = NulL;sqlite3_open("filename.sqlite",&local_db);int retval,IDx;char sql[2048];sprintf(sql,"select Something from Somewhere;");// execute statementretval = sqlite3_prepare_v2(local_db,sql,-1,&stmt,0);if(retval){ printf("Selecting data from DB Failed (err_code=%d)\n",retval); return;}// iterate rowsIDx = 0;// for multiple resultswhile(1){ // fetch a row's status retval = sqlite3_step(stmt); if(retval == sqlITE_ROW) { Something = (int)sqlite3_column_int(stmt,0); // or other type - sqlite3_column_text etc. // ... fetch other columns,if there are any } else if(retval == sqlITE_DONE) { break; } else { sqlite3_finalize(stmt); printf("Some error encountered\n"); break; }}sqlite3_finalize(stmt);sqlite3_close(local_db);
使用此代码,查找所有API调用(open,prepare_v2,step,column,finalize).
如果这很难,那么首先你应该熟悉C本身.
总结以上是内存溢出为你收集整理的Sqlite C接口获得单值结果全部内容,希望文章能够帮你解决Sqlite C接口获得单值结果所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)