2010-08-22 83 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

相关问题