У меня есть таблица с двумя столбцами как комбинация (текст), флаг (число). Я пытаюсь получить значение флага в зависимости от значения комбинации, используя предложение where в запросе выбора.
Проблема в том, что когда значение комбинации начинается с 1, например где комбинация = '1001', тогда она извлекает правильное значение флага из таблицы, но когда оно начинается с 0, например, где комбинация = '0010', то из базы данных ничего не получается. Я отладил код, но не получил причину для этого. Ниже приведено изображение базы данных.

-(void)fetchfromDatabase
{
sqlite3 *database;
NSString *strPath = [[NSBundle mainBundle]pathForResource:@"ken" ofType:@"db"];
NSLog(@"DBPath : %@",strPath);
const char *dbPath = [strPath UTF8String];
if(sqlite3_open(dbPath, &database)==SQLITE_OK)
{
NSLog(@"Database is Ok");
// const char *cConcate = [concate UTF8String];
NSString *query = [NSString stringWithFormat:@"select * from kentable where combination =%@",concate];
NSLog(@"final concate in database:%@",concate);
NSLog(@"Query:%@",query);
const char *sqlQuery =[query cStringUsingEncoding:NSASCIIStringEncoding];
NSLog(@"char query %s", sqlQuery);
sqlite3_stmt *queryStatement;
if(sqlite3_prepare_v2(database, sqlQuery,-1,&queryStatement, NULL)==SQLITE_OK)
{
NSLog(@"Conversion is Ok");
while (sqlite3_step(queryStatement)==SQLITE_ROW)
{
NSLog(@"in While Statement of row");
int flag=sqlite3_column_int(queryStatement, 1);
NSLog(@"question 5:%d",flag);
}
sqlite3_reset(queryStatement);
}
else
{
NSLog(@"ERROR");
}
sqlite3_close(database);
}
}