Выбор значений из базы данных через sqlite в iPhone - PullRequest
1 голос
/ 21 апреля 2011

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

NSString *sqlQuery = [NSString stringWithFormat: @”select * from %@”, tableName];
If(sqlite3_prepare_v2(db, [sqlQuery UTF8STRING] , -1, &statement, NULL)== SQLITE_OK)
{
While(sqlite3_step(statement) == SQLITE_ROW)
{
}
Sqlite3_finalize(statement);
}

В чем я сомневаюсь, внутри цикла while мы можем получить значения столбца через индекстаблица как следующий код.

NSString *addressField = [[NSString alloc] initWithUTF8String:(const char *) sqlite3_column_text(statement, 0)];
address.text = addressField;

Для одного столбца мы можем получить, как это.В моем случае я не знаю количество столбцов, которые нужно получить.В этом случае, как перебрать столбцы.Пожалуйста, помогите мне.Спасибо.

1 Ответ

1 голос
/ 21 апреля 2011
NSString *sqlQuery = [NSString stringWithFormat: @”select * from %@”, tableName];
If(sqlite3_prepare_v2(db, [sqlQuery UTF8STRING] , -1, &statement, NULL)== SQLITE_OK)
{
While(sqlite3_step(statement) == SQLITE_ROW)
{
int columnCount = YouKnowColumnCount;
NSMutableArray* array = [[NSMutableArray alloc]init];

for( int i=0; i<columnCount ; ++i) {
    [array addObject:[[NSString alloc] initWithUTF8String:(const char *)sqlite3_column_text(statement, i)]];
}
Sqlite3_finalize(statement);
}

Нечто подобное зависит от того, что вы хотите сделать ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...