Как извлечь все строки из таблицы SQLite? - PullRequest
1 голос
/ 14 июня 2011

Привет, ребята, я делаю некоторые операции с базой данных в iphone ... пожалуйста, кто-нибудь может объяснить мне, как извлечь все строки из таблицы ... здесь в этом примере он получает только самые последние введенные данные ..

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];
    }

1 Ответ

0 голосов
/ 14 июня 2011

До сих пор у вас все было в порядке.Просто продолжайте добавлять окончательную форматированную строку (str) в NSMutableArray и, наконец, верните ее из функции.

// 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;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...