2012-11-14 43 views
1

我的Windows Phone 7.1項目中有一個現有的sqlite數據庫。我能夠在數據庫上執行選擇查詢...但我無法執行插入或更新數據庫表中的查詢。例如,執行以下操作:在Windows Phone的SQLITE數據庫中沒有更新表格

//Update operation 
    public void Update<T>(string statement) where T : new() 
    { 
     try 
     { 
      Open(); 
      SQLiteCommand cmd = db.CreateCommand(statement); 
      int i = cmd.ExecuteNonQuery(); 

     } 
     catch (SQLiteException ex) 
     { 
      System.Diagnostics.Debug.WriteLine("updation failed: " + ex.Message); 
      throw ex; 
     } 
} 

該命令執行得非常好,並且不引發異常,表示更新成功。但是當我看到數據庫時,我會得到舊記錄而不是更新的記錄。我已經通過在SQLITE瀏覽器中運行來驗證查詢,並且它工作正常。但是當我運行該應用程序時,它不會。當nonQuery語句執行時,我得到1,這意味着記錄被更新。但不幸的是它不是。

任何有關這方面的幫助表示讚賞。在此先感謝...

回答

0

我沒有看到提交事務代碼。默認情況下,事務回滾。

另外,你知道DatabaseSchemaUpdater類嗎? Here's the sample我用來在我的應用程序中升級數據庫模式,效果很好。該文章是關於添加列,但該類還有AddTable < … >方法。不要忘記閱讀第2條評論。