0
こんにちは私はこのコードを使用していますが、クエリーが間違っています 同じクエリMesaSQLiteを実行すると、喜んで働いています私はデータベースからリストを取得する方法
名= 『象』ここで私は動物から「SELECT *を使用-(NSMutableArray*)getAnimalsList
{
[animalsList removeAllObjects];
sqlite3_stmt* statement;
const char *sql;
sql = "select * from animals where name = Elephant";
if (sqlite3_prepare_v2(database, sql, -1, &statement, NULL) != SQLITE_OK)
{
NSAssert1(0, @"Error: failed to prepare statement with message '%s'.", sqlite3_errmsg(database));
}
while (sqlite3_step(statement) == SQLITE_ROW)
{
NSInteger primaryKey = sqlite3_column_int(statement,0);
Animal *animalObject = [[Animal alloc] initWithPrimaryKey:primaryKey database:database];
[animalsList addObject:animalObject];
[animalObject release];
animalObject = nil;
}
sqlite3_finalize(statement);
printf("\n The animals list count is :%d",[animalsList count]);
return animalsList ;
}
助ける;」SQLiteの中で、それはあなたがあなたのコード内の引用符で象を囲むされていません
ありがとうございました。あなたは動物の名前を渡すためにSQL stmtを提供できますか? - (NSMutableArray *)getAnimalsList:(NSString *)animalName {sql = "動物から選択* name = animalName"; – user1179590
私は次のコードでそれを手に入れました - (NSMutableArray *)getAnimalsList:(NSString *)animalName {\t \t [animalsList removeAllObjects]; \t \t sqlite3_stmt *文;\t \t NSString * sql = [NSString alloc] initWithFormat:@ "select * from animals = '%@'"、animalName]; \t(sqlite3_prepare_v2(データベース、[SQL UTF8Stringを]、-1、&声明、NULL)= SQLITE_OK!)@ \t { \t \t NSAssert1(0、あれば "エラー:メッセージ '%s' にして文を準備することができませんでした。" 、sqlite3_errmsg(データベース)); \t} – user1179590