當我嘗試更新表它給了我一個SQLite的更新命令不工作
錯誤消息:近「(」:語法錯誤
請有人建議我解決這個問題, 。
我更新表時,我點擊它放在下面的工具欄上的保存按鈕(欄按鈕項)。
問題是,它總是走ing至sqlite3_step
的其他聲明。
我不明白這個問題和上述錯誤的確切問題。
任何建議,將不勝感激。
以下是我更新方法:
if ([databaseManager didExistDatabaseInDocumentDirectory] == YES)
{
const char *dbpath = [[databaseManager getDatabasePathFromDocument] UTF8String];
sqlite3_stmt *stmt;
if (sqlite3_open(dbpath, &scanningDB) == SQLITE_OK)
{
const char *update_stmt1 = "UPDATE FILES SET (documentType,orderNumber) VALUES (?,?) WHERE ID = ?";
sqlite3_prepare_v2(scanningDB, update_stmt1, -1, &stmt, NULL);
sqlite3_bind_text(stmt, 1, [str UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_text(stmt, 2, [str1 UTF8String], -1, SQLITE_TRANSIENT);
sqlite3_bind_int(stmt, 3,[num intValue]);
if(sqlite3_step(stmt)==SQLITE_DONE)
{
sqlite3_reset(stmt);
NSLog(@"Record Updated Successfully");
}
else
{
NSLog(@"Could not Update Record");
NSLog(@" error message %s",sqlite3_errmsg(scanningDB));
sqlite3_finalize(stmt);
sqlite3_close(scanningDB);
return NO;
}
sqlite3_finalize(stmt);
sqlite3_close(scanningDB);
}
else
return NO;
}
else
return NO;
它看起來像你的更新查詢是錯誤的。看看這裏:http://www.tutorialspoint.com/sql/sql-update-query.htm – Mayur