You can use this as below :
/================================================================
METHOD FOR Fetching Data FROM DATABASE
==================================================================/
-(NSMutableArray *)getData:(NSString *)query
{
//NSLog(@"QUERY : %@",query);
NSString *idToReturn=@"";
NSMutableArray *returnArray = [NSMutableArray new];
if(sqlite3_open([[self dataFilePath] UTF8String], &database) == SQLITE_OK)
{
sqlite3_stmt *statement;
if (sqlite3_prepare_v2(database, [query UTF8String], -1, &statement, nil)==SQLITE_OK)
{
while(sqlite3_step(statement)==SQLITE_ROW)
{
NSMutableDictionary *temp= [NSMutableDictionary new];
const char *s;
s=(char *)sqlite3_column_text(statement, 0); // Here 0 is the first column index
if(s==NULL)
{
idToReturn=@"";
}
else
{
idToReturn =[NSString stringWithUTF8String:s];
}
[temp setObject:idToReturn forKey:@"firstData"];
s=(char *)sqlite3_column_text(statement, 1);
if(s==NULL)
{
idToReturn=@"";
}
else
{
idToReturn =[NSString stringWithUTF8String:s];
}
[temp setObject:idToReturn forKey:@"secondData"];
s=(char *)sqlite3_column_text(statement, 2);
if(s==NULL)
{
idToReturn=@"";
}
else
{
idToReturn =[NSString stringWithUTF8String:s];
}
[temp setObject:idToReturn forKey:@"thirdData"];
s=(char *)sqlite3_column_text(statement, 3);
if(s==NULL)
{
idToReturn=@"";
}
else
{
idToReturn =[NSString stringWithUTF8String:s];
}
[temp setObject:idToReturn forKey:@"forthData"];
s=(char *)sqlite3_column_text(statement, 5);
if(s==NULL)
{
idToReturn=@"";
}
else
{
idToReturn =[NSString stringWithUTF8String:s];
}
[temp setObject:idToReturn forKey:@"fifthData"];
if (temp != nil)
{
[returnArray addObject:temp];
temp = nil;
}
}
sqlite3_finalize(statement);
sqlite3_close(database);
}
}
return returnArray;
}
Then call this as :
NSString *query = [NSString stringWithFormat:@"select * from tablename"];
NSMutableArray *data = [self getData:query];
Hope it helps you.