0
私はコアデータでテストを行っていて、おおよその配列を持っています。 230レコード私のデータベースに格納しようとします。残念ながら、最後のレコードだけがデータベースに格納されているようです。なぜ私はwhileループが正しくループしているのか分かりません。最後のレコードのみがデータベースに格納されているのはなぜですか?
また、1つのフィールド(nrField)がインデックスに登録されている場合は、数値を追加する必要がありますか?これはデータベースにレコードを追加すると自動的に行われますか? nrFieldsは、各レコードに格納されている固有のカウンタです。
//=========LOOP ARRAY AND INSERT RECORDS INTO DB==============//
while (eOF != 99999) {
qNr = [myArray objectAtIndex:xx];
eOF = [qNr intValue];
xx = xx++;
if (eOF != 99999) {
qDifficulties = [myArray objectAtIndex:xx];
int iDiff = [qDifficulties intValue];
[famQuizInfo setValue:[NSNumber numberWithInt:iDiff] forKey:@"qDiff"];
xx = xx++;
// No action for Category as it is not included in the database any longer
xx = xx++; // Calculate +1 to compensate for non existing Category
[famQuizInfo setValue:[myArray objectAtIndex:xx] forKey:@"question"];
xx = xx++;
[famQuizInfo setValue:[myArray objectAtIndex:xx] forKey:@"qRightAnswer"];
xx = xx++;
[famQuizInfo setValue:[myArray objectAtIndex:xx] forKey:@"qWrongAnswer1"];
xx = xx++;
[famQuizInfo setValue:[myArray objectAtIndex:xx] forKey:@"qWrongAnswer2"];
[famQuizInfo setValue:[NSNumber numberWithInt:0] forKey:@"qNrAccess"];
[famQuizInfo setValue:[NSDate date] forKey:@"qRegDate"];
//NSError *error;
if (![qContext save:&error]) {
NSLog(@"Whoops, couldn't save: %@", [error localizedDescription]);
}
xx = xx++;
NSLog(@"xx: %i", xx);
}
}