我大概有这段代码:
querySQL = [NSString stringWithFormat:@"SELECT id, contactid, txtcontent, strDate, direction, status, priority, status_r....."
const char * query_stmt = [querySQL UTF8String];
if(sqlite3_prepare(db, query_stmt, -1, &statement, nil) == SQLITE_OK) {
int rc;
while ((rc = sqlite3_step(statement)) == SQLITE_ROW) {
....
}
}
在运行9.x的任何iPhone上,没有问题,每次新行时应用程序都在读取。 在运行7.x的任何iPhone 4上,完全相同的代码保持在同一行并进入死胡同循环。 有人遇到过这个问题吗?
答案 0 :(得分:0)
最终看起来查询类似于
querySQL = "select * from messages order by date desc, date desc";
订单条件错误地出现两次,这导致sqlite3_step停留在同一行。这个代码工作了几年没有任何问题,仍然可以工作和更高的iOS级别。奇怪。