我正在sqlite3数据库上执行SELECT语句。当结果应该是表中的第一行时,返回值总是SQLITE_DONE而不是SQLITE_ROW,我无法得到结果。
do {
ret.error = sqlite3_step(stmt);
debug("error: %d",ret.error);
if(ret.error == SQLITE_ROW)
{
[...]
} } while(ret.error != SQLITE_ERROR && ret.error != SQLITE_DONE &&
ret.error != SQLITE_MISUSE);
谁能告诉我我做错了什么? (查询正确...)
答案 0 :(得分:0)
从“调试”配置切换到“发布”为我解决了这个问题。
答案 1 :(得分:0)
把:
sqlite3_finalize(statement);
在 While循环之后。