Sqlite C接口获得单值结果

Sqlite C接口获得单值结果,第1张

概述当我输入Sqlite SELECT Count(*) FROM tabl; 它返回一个数字. 在准备语句后如何使用C接口获取此数字? 打开数据库文件,准备语句,制作步骤(例如,如果结果中有多行,则必须逐个获取它们),提取列值,最终确定语句,关闭数据库. 像这样的东西: sqlite3_stmt* stmt = NULL;sqlite3* local_db = NULL;sqlite3_op 当我输入sqlite

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接口获得单值结果所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1155312.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存