2010-08-22 59 views
5

我想在sqlite android數據庫中增加一列。 Im做這樣的:如何在sqlite android數據庫中增加字段

public void atualiza(String word){ 
    this.db.rawQuery("UPDATE words SET count = count + 1 WHERE word= ? ", new String[] {word});  
} 

我呼籲另一類方法是這樣的:

this.dh.atualiza(word); 

但是,當我從模擬器拉數據庫,並與SQLite數據庫瀏覽器檢查,本場不增加。爲什麼?

+0

怎麼樣,如果你從你的代碼中做一個選擇(選擇從單詞=?的單詞開始計數),是否返回正確的值? (你肯定是拉着正確的數據庫?) – 2010-08-22 05:45:26

+1

我認爲'rawQuery'返回一個錯誤代碼。你能檢查它是什麼嗎?另外,更新應該使用execSQL進行。 – MPelletier 2010-08-22 17:21:57

回答

0

您需要在數據庫上啓動一個事務Data not inserting in Sqlite database in android

+0

我應該指出,當沒有指定事務時,SQLite會自行創建。 – MPelletier 2010-08-22 17:20:52

+0

嗯..你知道關於這個功能的很好的android文檔嗎?我非常感謝鏈接。 – 2010-08-22 17:22:33

+0

這是SQLite的一個特性,與Android不同,但是這裏是官方文檔:http://sqlite.org/lang_transaction.html:「除了在一個事務內部之外,不能更改數據庫。數據庫(基本上是SELECT以外的任何SQL命令)將自動啓動一個事務,如果其中一個尚未生效,則在最後一個查詢完成時自動啓動事務。 – MPelletier 2010-08-22 20:51:18

相關問題