我有我在iOS应用程序中创建的SQLite数据库。一系列数字正被存储在这个数据库中。我想汇总整个列,并返回要在应用程序中显示的数据。iOS SQLite总和检索数据
写入数据库的所有内容都正常工作,但我试图返回相加的数据。任何帮助将不胜感激。
-(void) dataReturn: (NSString *) tableNamed{
NSString *myData = [NSString stringWithFormat:@"SELECT SUM(column1) AS data1 FROM myDB", tableNamed];
sqlite3_stmt *statement;
if(sqlite3_prepare_v2(db, [myData UTF8String], -1, &statement, nil) ==SQLITE_OK){
while (sqlite3_step(statement) == SQLITE_ROW){
int *field2 = (int *) sqlite3_column_int(statement, 1);
NSString *myString =[[NSString alloc] initWithFormat:@"%@", field2];
}
}
}
谢谢你的回应,但我仍然得到一个0值,如果我跟踪变量(我们查看了数据库,并验证我有在那里的数据,我应该得到61作为响应)... – Nathan
myDB是数据库中表的名称吗?我注意到你没有在myData字符串中使用tableNamed参数。另外,除了除去字段2前面的指针*之外,还要确保在sqlite3_column_int函数中使用0而不是1作为第二个参数。 (最后,请确保在initWithFormat方法中使用%d而不是%@)。 –