开发者

How do I retrieve all the rows from an SQLite table?

hello guys i am doing some database operations in iphone .. please can anyone explain me how to retrieve all rows from the table开发者_如何转开发..here in this example it retreives only the latest entered data..

while(sqlite3_step(statement) == SQLITE_ROW)
    {   
        char *field1 = (char *) sqlite3_column_text(statement,0);
        NSString *field1Str = [[NSString alloc] initWithUTF8String: field1];
        char *field2 = (char *) sqlite3_column_text(statement,1);
        NSString *field2Str = [[NSString    alloc] initWithUTF8String: field2];

        NSString *str = [[NSString alloc] initWithFormat:@"%@::%@",field1Str, field2Str];
        textv.text=str;

        [field1Str release];
        [field2Str release];
    }


You were doing all right so far. Just keep adding the final formatted string (str) in an NSMutableArray and finally return it from the function.

// Take an array to store all string.
NSMutableArray *allRows = [[[NSMutableArray alloc] init] autorelease];

while(sqlite3_step(statement) == SQLITE_ROW)
    {   
        char *field1 = (char *) sqlite3_column_text(statement,0);
        NSString *field1Str = [[NSString alloc] initWithUTF8String: field1];
        char *field2 = (char *) sqlite3_column_text(statement,1);
        NSString *field2Str = [[NSString    alloc] initWithUTF8String: field2];

        NSString *str = [NSString stringWithFormat:@"%@::%@",field1Str, field2Str];
        // textv.text=str; // I don't know why your are mixing your view controller stuff's in database function.
// Add the string in the array.
allRows addObject:str];

        [field1Str release];
        [field2Str release];
    }

// Finally you can return your allRows
return allRows;
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜