Fmdb Loop только извлекает первую запись в базе данных IOS - PullRequest
0 голосов
/ 14 декабря 2011

у меня есть две записи в моей базе данных

sqlite> select *from courses;
1|ME|273|Statics|MWF|02:20 pm-03:20 pm|James M. Pitarresi|LH 002
2|CS|328|Internet|TR|02:20 pm-03:20 pm|Steflik|eb 23

, и у меня есть следующий код, но он показывает только первую запись в моей базе данных

   -(NSMutableArray *) getCourses
    {
         courses = [[NSMutableArray alloc] init];
         FMDatabase *db = [FMDatabase databaseWithPath:[Utility getDatabasePath]];
        [db open];  
        FMResultSet *results = [db executeQuery:@"SELECT * FROM courses"];

        if ([db hadError]) {
            NSLog(@"DB Error %d: %@", [db lastErrorCode], [db lastErrorMessage]);
        }

        while([results next]) 
        {
            [courses addObject:[results stringForColumn:@"Subject"]];
            [courses addObject:[results stringForColumn:@"Course_Number"]];                
            [courses addObject:[results stringForColumn:@"Course_Title"]];                
            [courses addObject:[results stringForColumn:@"Days"]];               
            [courses addObject:[results stringForColumn:@"Time"]];            
            [courses addObject:[results stringForColumn:@"Instructor"]];                
            [courses addObject:[results stringForColumn:@"Location"]];  

        }

        NSLog(@"loop %@ ",courses);

        [results close];
        [db close];

        return courses; 

    }

мой вывод, он не показываетвторая запись

loop (
    ME,
    273,
    Statics,
    MWF,
    "02:20 pm-03:20 pm",
    "James M. Pitarresi",
    "LH 002"
)

есть идеи, почему это происходит?

1 Ответ

0 голосов
/ 15 декабря 2011

Я не знаю почему, но когда я меняю имя базы данных или создаю новую базу данных, проблема решается

...