1
私のSQLite DBから読み込めましたが、更新できませんでした。私はデータベースが書き込み可能かどうか疑問に思います。SQLiteクエリの更新FMDB - 初心者
SQLをSQLコンソールにコピーすると、コードは正常に実行されます。したがって、SQLに問題はありません。
-(BOOL) updateScores{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *writableDBPath = [documentsDirectory stringByAppendingPathComponent:@"uniques.sqlite"];
FMDatabase* db = [FMDatabase databaseWithPath:writableDBPath];
BOOL success;
if ([db open]) {
if ([db hadError]) {
NSLog(@"DB Error %d: %@", [db lastErrorCode], [db lastErrorMessage]);
}
success = [db executeUpdate:[NSString stringWithFormat:@"UPDATE Score SET answer='11' WHERE name LIKE 'jack'"]];
if (success) {
NSLog(@"OK");
}else {
NSLog(@"FAIL");
}
[db close];
}else {
NSLog(@"Problem with DB");
}
return success;
}
それがコンソールに何を印刷しない:あなたが番号を渡している場合でも、これは試してみてください
としてそれを渡しますか? OK - FAIL - DBに問題がありますか? –
それはOKだと言いますが、コンソールにselect * SQLを入力すると、更新されていません。 – Illep
実際に変数を入れないと* stringWithFormat *を使うのはなぜですか?リテラルを試してください。動作しない場合は、単一引用符を削除してください。 – lawicko