如何解决在FMDB中调用sqlite3_step(21:out of memory)rs的错误

sre*_*vas 8 sqlite objective-c ios4

我正在使用FMDB包装器我使用此代码

- (BOOL)update:(NSString *) Body fromValue:(NSString *)froms {

    BOOL success = NO;
    FMResultSet *rs;
//I have **searchTable** and in that folder name **OFFICE**  

    rs = [self.database executeQuery:@"select searchId,body from searchTable WHERE folder = 'OFFICE'"];


    NSInteger primaryKey = -1;
    NSString *body = nil;
    NSString *md5OfSearchEmailBody = nil;
    while ([rs next]) {
        primaryKey  = [rs intForColumn:@"searchId"];
        body = [rs stringForColumn:@"body"];
    }           

    [rs close];
    return success;
}
Run Code Online (Sandbox Code Playgroud)

第一次

- (BOOL)update:(NSString *) Body fromValue:(NSString *)froms{
}
Run Code Online (Sandbox Code Playgroud)

方法工作正常.在循环第二次它不工作

调用sqlite3_step(21:out of memory)rs时出错

如何解决这个问题呢

iCr*_*ive 5

检查 [rs close];

可能是它正在释放或关闭数据库.

================================================== =

更好地使用CoreData在您的应用程序中实现sqlite.

当应用程序中有更好的内部库时,为什么要使用外部库.您不需要删除sqlite表.您可以轻松地将现有数据库迁移到CoreData.