我有更新我的SQLite數據庫的問題,所以我將非常感謝,如果有人可以幫助我。我嘗試了每個可能的例子和教程,但沒有。在我的sqlite表中我有9個屬性,但我只需要更新三個。Xcode更新Sqlite記錄
const char *sql = "UPDATE studentNotes SET title = ? , note = ? , existingAudioNote = ? , audioNoteName = ? , audioNoteDuration = ? , existingPdf = ? , pdfFileName = ? WHERE id = ?";
if(sqlite3_open([[AppDelegate getDatabasePath]UTF8String], &database) == SQLITE_OK){
if (sqlite3_prepare_v2(database, sql, -1, &updateStmt, NULL) != SQLITE_OK){
NSAssert1(0, @"Error while creating add statement. '%s'", sqlite3_errmsg(database));
}
else {
sqlite3_bind_text(updateStmt, 1, [noteTitle UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 2, [noteText UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 3, [noteExistingAudioNote UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 4, [noteAudioName UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 5, [audioNoteDuration UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 6, [existingPdf UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(updateStmt, 7, [pdfFileName UTF8String], -1, SQLITE_TRANSIENT);
if (SQLITE_DONE != sqlite3_step(updateStmt)){
NSAssert1(0, @"Error while updating data. '%s'", sqlite3_errmsg(database));
}
sqlite3_reset(updateStmt);
}
}
sqlite3_close(database);
我試過這段代碼,但是當我從我的類調用這個方法到視圖,它不工作。有任何想法嗎 ?
可能重複的[sqlite3更新不工作在ios](http://stackoverflow.com/questions/12439751/sqlite3-update-not-working-in-ios)等等,無法想象爲什麼它是在發佈之前很難做一個Google搜索...... – 2012-10-25 19:46:32
你能比「不工作」更具體嗎? –
當我嘗試更新記錄時,它不執行任何操作。沒有出現錯誤。它唯一要做的就是再次錄製相同的記錄。我在addObject的appdelegate中發現了這個問題:。我甚至用Coffe教程試過,但沒有任何結果。唯一的想法是,我沒有得到它的身份證。 – dsafa