当前位置:首页 > 数据库 > SQlite

c-从SQLite获取int值

我听说使用sqlite3_prepare_v2而不是sqlite_exec从数据库获取整数,但是我找不到任何示例. This页也没有帮助.现在我正在从数据库中获取字符串,因此我需要使用atoi来解析它们,这似乎是缓慢且无效的.
SO上有很多类似的问题,但它们与obj-c和iOS SDK有关.我需要C/C++提示或示例.
提前致谢.

解决方法:

成功完成sqlite3_prepare之后,您一定不要忘记使用sqlite3_finalize清理语句.
要获取结果记录,请调用sqlite3_step,直到不返回SQLITE_ROW.
要获取当前结果记录的值,请调用sqlite3_column_* functions

sqlite3_stmt *stmt;
if (sqlite3_prepare_v2(db, "SELECT 42", -1, &stmt, NULL) != SQLITE_OK)
    ...error...
else {
    for (;;) {
        int rc = sqlite3_step(stmt);
        if (rc == SQLITE_DONE)
            break;
        if (rc != SQLITE_ROW) {
            ...error...
            break;
        }
        printf("value: %dn", sqlite3_column_int(stmt, 0));
    }
    sqlite3_finalize(stmt);
}

【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!