Я использую следующий код для получения максимального значения в столбце
Колонка № 11 (в коде означает 10 нет)
Имя столбца uniqueColumnSNo
Тип данных Столбец-целое.
Меня смущает синтаксис, используемый dbhanlder.
Вот код.
Просто дайте мне знать, КАК Я ПОЛУЧУ МАКСИМАЛЬНОЕ ЗНАЧЕНИЕ, КОТОРОЕ ВОЗВРАЩАЕТСЯ ИЗ ЗАДАННОГО столбца.
Помогите. Заранее спасибо.
+ (INT) getMaxColumnSNo
{
NSInteger favid;
int count=0;
sqlite3 *database;
NSString *dbpath;
dbpath = [dbhandler dataFilePath:DbName];
if (sqlite3_open([dbpath UTF8String], &database) == SQLITE_OK)
{
NSString *selectSql = [NSString stringWithFormat:@"SELECT max(uniqueColumnSNo) FROM CustomerFields"];
sqlite3_stmt *statement;
if (sqlite3_prepare_v2(database, [selectSql cStringUsingEncoding:NSUTF8StringEncoding], -1, &statement, NULL) == SQLITE_OK)
{
while (sqlite3_step(statement) == SQLITE_ROW)
{
//[result addObject:[[NSMutableDictionary alloc] init]];
favid=(NSInteger)sqlite3_column_int64(statement,10);
//favid = [[NSString stringWithUTF8String:(char *)sqlite3_column_text(statement, 10)] intValue];
count++;
}
sqlite3_finalize(statement);
}
else
{
NSLog(@"Sql Preparing Error");
}
sqlite3_close(database);
}
else
{
NSLog(@"Database not opening");
}
int i;
if (count!=0) {
i=favid ;
}
else {
i=1;
}
return i;
//return favid;
}