以下のクエリを使用しても結果は得られませんが、「SELECT * FROM ORDER_HEADER」と言うと結果が得られます。SqlLite データベース ブラウザで「SELECT * FROM ORDER_HEADER WHERE CUSTOMER = 1」と入力すると、正しいデータが返されました。行の結果が表示されないのはなぜですか? SELECT * FROM ORDER_HEADER WHERE CUSTOMER = %d",1 も試しました。ご協力ありがとうございます。
- (void)viewDidLoad{
[super viewDidLoad];
[super viewDidLoad];
salesOrders = [[NSMutableArray alloc] init];
NSString *databasePath = [[[NSBundle mainBundle] bundlePath] stringByAppendingPathComponent:@"MobilePDQ"];
FMDatabase *db = [[FMDatabase alloc] initWithPath:databasePath];
[db open];
FMResultSet *fResult = [db executeQueryWithFormat:@"SELECT * FROM ORDER_HEADER WHERE CUSTOMER = %d",1];
NSLog ( @"has results: %@", [fResult hasAnotherRow] ? @"YES" : @"NO" );
while([fResult next])
{
SalesOrderHeaderController *salesOrder = [SalesOrderHeaderController alloc];
salesOrder.salesOrderID = [fResult intForColumn:@"ID"];
salesOrder.creationDate = [fResult stringForColumn:@"CREATION_DATE"];
[salesOrders addObject:salesOrder];
}
[db close];}
CUSTOMER列が数値型であることに関係していると確信していますか? 「SELECT * FROM ORDER_HEADER WHERE ID = 1」と言ってみましたが、ID が整数の主キー データ型の場合に機能しました。そうは言っても。数値データ型で検索するにはどうすればよいですか? 再度、感謝します。