データベースに何かを挿入しようとすると、次のエラーが発生します。
奇妙なことは、挿入先のテーブルに約12〜14の以前のレコードがある場合にのみエラーが発生することです。これを解決する方法を知っている人はいますか?
これが私のコードです:
- (void)addToBasket:(id)sender {
NSArray *sysPaths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES );
NSString *docDirectory = [sysPaths objectAtIndex:0];
NSString *filePath = [NSString stringWithFormat:@"%@/MainDatabase.db", docDirectory];
databasePath = filePath;
db = [FMDatabase databaseWithPath:databasePath];
if (![db open]) { [db release]; return; }
NSInteger prodID = ((UIControl*)sender).tag;
[db executeUpdate:@"INSERT INTO order_items VALUES (?, ?, ?, ?)", @"", [NSNumber numberWithInt:prodID], orderID, [NSNumber numberWithInt:1], nil];
[basket insertObject:[NSNumber numberWithInt:prodID] atIndex:0];
[basketQA insertObject:[NSNumber numberWithInt:1] atIndex:0];
[basketItemName insertObject:@"test" atIndex:0];
[basketPrice insertObject:@"test" atIndex:0];
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
[self.tableView insertRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
[db close];
}