2010-03-22 60 views
0

我有sqlite語句準備更新..但我很迷惑從uitextview抓取文本並更新它..並且我減弱了使用uibutton更新它..如何在創建後繼續SQL語句???還挺lost..any新的解決方案是欣賞..sqlite3更新uitextview中的文本

- (void) saveAllData { 
    if(isDirty) { 
     if(updateStmt == nil) { 
      const char *sql = "update Snap Set snapTitle = ?, snapDesc = ?, Where snapID = ?"; 
      if(sqlite3_prepare_v2(database, sql, -1, &updateStmt, NULL) != SQLITE_OK) 
       NSAssert1(0, @"Error while creating update statement. '%s'", sqlite3_errmsg(database)); 
      } 
      sqlite3_bind_text(updateStmt, 1, [snapTitle UTF8String], -1, SQLITE_TRANSIENT); 
      sqlite3_bind_text(updateStmt, 2, [snapDescription UTF8String], -2, SQLITE_TRANSIENT); 
      sqlite3_bind_int(updateStmt, 3, snapID); 
      if(SQLITE_DONE != sqlite3_step(updateStmt)) 
       NSAssert1(0, @"Error while updating. '%s'", sqlite3_errmsg(database)); 
       sqlite3_reset(updateStmt); 
       isDirty = NO; 
      } 

     //Reclaim all memory here. 
     [snapTitle release]; 
     snapTitle = nil; 
     [snapDescription release]; 
     snapDescription = nil; 

     //isDetailViewHydrated = NO; 
    } 
} 

回答

0

而不是sqlite3_reset(updateStmt)我用sqlite3_finalize(updateStmt)和代碼運行正常。