Кажется, что нет прямого способа сделать это. То, что я сделал, было
а) получить количество полей в результате с помощью sqlite3_column_count ()
б) Затем я создал словарь для сопоставления значений
в) Затем я перебрал бы столбцы и заполнил словарь парами ключ / значение, используя
column_name / индекс
Теперь у вас есть словарь сопоставлений, который содержит индексы имен столбцов. Вы можете использовать это, чтобы получить индекс столбца, используя имя столбца.
Вот мой фрагмент кода. Надеюсь, это поможет !!!
int columnCount = sqlite3_column_count(statement);
NSMutableDictionary *mapper=[[NSMutableDictionary alloc] init];
for(int i=0;i<columnCount;i++){
const char *_columnName=sqlite3_column_name(statement, i);
NSString *columnName=[[NSString alloc] initWithUTF8String:_columnName];
[mapper setObject:[NSNumber numberWithInteger:i] forKey:columnName];
}